{"id":13807693,"url":"https://github.com/apache/servicecomb-java-chassis","last_synced_at":"2025-05-13T22:02:07.048Z","repository":{"id":37285415,"uuid":"91674936","full_name":"apache/servicecomb-java-chassis","owner":"apache","description":"ServiceComb Java Chassis is a Software Development Kit (SDK) for rapid development of microservices in Java, providing service registration, service discovery, dynamic routing, and service management features","archived":false,"fork":false,"pushed_at":"2025-05-02T02:31:24.000Z","size":28211,"stargazers_count":1922,"open_issues_count":188,"forks_count":822,"subscribers_count":131,"default_branch":"master","last_synced_at":"2025-05-06T21:09:51.949Z","etag":null,"topics":["servicecomb"],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/apache.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":"governance/pom.xml","roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2017-05-18T09:29:30.000Z","updated_at":"2025-05-02T02:30:31.000Z","dependencies_parsed_at":"2023-10-20T17:19:55.623Z","dependency_job_id":"869d89f9-e209-4ff8-a231-8bbab68da1ef","html_url":"https://github.com/apache/servicecomb-java-chassis","commit_stats":null,"previous_names":["servicecomb/java-chassis","apache/incubator-servicecomb-java-chassis"],"tags_count":99,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fservicecomb-java-chassis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fservicecomb-java-chassis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fservicecomb-java-chassis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fservicecomb-java-chassis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apache","download_url":"https://codeload.github.com/apache/servicecomb-java-chassis/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254036807,"owners_count":22003651,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["servicecomb"],"created_at":"2024-08-04T01:01:28.996Z","updated_at":"2025-05-13T22:02:03.546Z","avatar_url":"https://github.com/apache.png","language":"Java","funding_links":[],"categories":["Microservices","开发框架"],"sub_categories":[],"readme":"# Java Chassis [中文](README_ZH.md) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.apache.servicecomb/java-chassis-core/badge.svg)](http://search.maven.org/#search%7Cga%7C1%7Corg.apache.servicecomb) [![License](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg)](https://www.apache.org/licenses/LICENSE-2.0.html)\n\nApache ServiceComb Java Chassis is a Software Development Kit (SDK) for rapid development of microservices in Java, providing service registration, service discovery, dynamic routing, and service management features.\n\n# releases\n\n| Release Train  | Latest Version | Compiled JDK Version | Tested JDK Version | Open API | Notes                    |\n|----------------|----------------|----------------------|--------------------|----------|--------------------------|\n| Java Chassis 3 | 3.2.2          | OpenJDK 17           | OpenJDK 17         | 3.0.x    | Depends on Spring Boot 3 |\n| Java Chassis 2 | 2.8.20         | OpenJDK 8            | OpenJDK 8, 11, 17  | 2.0.x    | Depends on Spring 5      |\n| Java Chassis 1 | 1.3.11         | OpenJDK 8            | OpenJDK 8          | 2.0.x    | End of Support           |\n\n\u003e NOTICE: Since Open API 3.0.x is not compatible with 2.0.x, Java Chassis 2 and Java Chassis 1 can not\n\u003e work together with Java Chassis 3. All related consumers, providers and edge service need use Java Chassis 3 when upgrading.\n\n\u003e NOTICE: Java Chassis 1 reached its end of support now after it's first release from 2018.\n\n# Quick Start\n\n* Define API\n```java\n@RequestMapping(path = \"/provider\")\npublic interface ProviderService {\n  @GetMapping(\"/sayHello\")\n  String sayHello(@RequestParam(\"name\") String name);\n}\n```\n\n* Provider service\n```java\n@RestSchema(schemaId = \"ProviderController\", schemaInterface = ProviderService.class)\npublic class ProviderController implements ProviderService {\n  @Override\n  public String sayHello(String name) {\n    return \"Hello \" + name;\n  }\n}\n```\n\n* Consumer service\n```java\n@Configuration\npublic class ProviderServiceConfiguration {\n  @Bean\n  public ProviderService providerService() {\n    return Invoker.createProxy(\"provider\", \"ProviderController\", ProviderService.class);\n  }\n}\n```\n\nInvoke Provider service with RPC\n```java\n@RestSchema(schemaId = \"ConsumerController\", schemaInterface = ConsumerService.class)\npublic class ConsumerController implements ConsumerService {\n  private ProviderService providerService;\n\n  @Autowired\n  public void setProviderService(ProviderService providerService) {\n    this.providerService = providerService;\n  }\n\n  @Override\n  public String sayHello(String name) {\n    return providerService.sayHello(name);\n  }\n}\n```\n\nTry out this example [here](https://servicecomb.apache.org/references/java-chassis/zh_CN/start/first-sample.html) .\n\n# Documentation\n\nProject documentation is available on the [ServiceComb Java Chassis Developer Guide][java-chassis-developer-guide].\n\n[java-chassis-developer-guide]: https://servicecomb.apache.org/references/java-chassis/zh_CN/\n\n# Building\n\n  You don’t need to build from source to use Java Chassis (binaries in apache nexus ), but if you want to try out the latest and greatest, Java Chassis can be easily built with the maven.  You also need JDK 17.\n\n      mvn clean install\n\nThe first build may take a longer than expected as Maven downloads all the dependencies.\n\n# Automated Testing\n\n  To build the docker image and run the integration tests with docker, you can use maven docker profile\n\n      mvn clean install -Pdocker -Pit\n\n  If you are using docker machine, please use the following command\n\n      mvn clean install -Pdocker -Pit -Pdocker-machine\n\n# Contact\n\nBugs: [issues](https://issues.apache.org/jira/browse/SCB)\n\nmailing list: [subscribe](mailto:dev-subscribe@servicecomb.apache.org)  [dev](https://lists.apache.org/list.html?dev@servicecomb.apache.org)\n\n\n# Contributing\n\nSee [CONTRIBUTING](http://servicecomb.apache.org/developers/contributing) for details on submitting patches and the contribution workflow.\n\n# Star this project\n\nIf you like this project, do not forget star it.\n\n[![Star History Chart](https://api.star-history.com/svg?repos=apache/servicecomb-java-chassis\u0026type=Date)](https://star-history.com/#apache/servicecomb-java-chassis\u0026Date)\n\n# License\nLicensed under an [Apache 2.0 license](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Fservicecomb-java-chassis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapache%2Fservicecomb-java-chassis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Fservicecomb-java-chassis/lists"}