Skip to content
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
Java Other
  1. Java 99.7%
  2. Other 0.3%
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github [SCB-1146] change `mvn clean install` to `mvn clean install -Pit` Feb 12, 2019
archetypes [SCB-1262] change 1.2.0-SNAPSHOT to 1.3.0-SNAPSHOT in pom.xml Apr 19, 2019
common [SCB-1262] change 1.2.0-SNAPSHOT to 1.3.0-SNAPSHOT in pom.xml Apr 19, 2019
core [SCB-1278] add comment on Microservice#thirdPartyService, change conf… May 30, 2019
coverage-reports [SCB-1262] change 1.2.0-SNAPSHOT to 1.3.0-SNAPSHOT in pom.xml Apr 19, 2019
demo [SCB-1304]FallbackPolicy#getFallbackResponse add Throwable Jun 27, 2019
deployment [SCB-1262] change 1.2.0-SNAPSHOT to 1.3.0-SNAPSHOT in pom.xml Apr 19, 2019
dynamic-config [SCB-1262] change 1.2.0-SNAPSHOT to 1.3.0-SNAPSHOT in pom.xml Apr 19, 2019
edge [SCB-1287]refactor edge dispatcher to make them more extensible May 20, 2019
etc [SCB-973] update ServiceComb-java-chassis repo name Nov 9, 2018
foundations [SCB-1297] fix CI that DynamicProperty can not get Spring properties Aug 15, 2019
handlers [SCB-1308] fix randomly failure of TestServiceCombLoadBalancerStats Aug 8, 2019
inspector Using the https maven repo May 22, 2019
integration-tests [SCB-1448]support class inheritance and interface inheritance with te… Aug 19, 2019
java-chassis-dependencies [SCB-1431] set all dependency versions as properties Aug 14, 2019
java-chassis-distribution [SCB-1366] update the version of dependency Jul 22, 2019
java-chassis-spring-boot [SCB-1262] change 1.2.0-SNAPSHOT to 1.3.0-SNAPSHOT in pom.xml Apr 19, 2019
metrics [SCB-1262] change 1.2.0-SNAPSHOT to 1.3.0-SNAPSHOT in pom.xml Apr 19, 2019
parents [SCB-1262] change 1.2.0-SNAPSHOT to 1.3.0-SNAPSHOT in pom.xml Apr 19, 2019
providers [SCB-1291]supportApiOperationMethodOverride Jul 22, 2019
samples [SCB-1277]make sure demo and samples are normal May 5, 2019
scripts [SCB-1193]delete unnecessary file Mar 13, 2019
service-registry [SCB-1407] Add new field when print provide cache log Aug 5, 2019
solutions [SCB-1262] change 1.2.0-SNAPSHOT to 1.3.0-SNAPSHOT in pom.xml Apr 19, 2019
swagger [SCB-1448]support class inheritance and interface inheritance with te… Aug 19, 2019
tracing [SCB-1262] change 1.2.0-SNAPSHOT to 1.3.0-SNAPSHOT in pom.xml Apr 19, 2019
transports [SCB-1405] supporting maxWaitQueueSize setting in RestTransportClient ( Jul 30, 2019
.gitignore SCB-457 demostrate how to run bmi with gradle Apr 13, 2018
.travis.settings.xml [SCB-570] reformat *.xml May 22, 2018
.travis.yml Revert the change of disable build cache Jun 8, 2018
LICENSE [SCB-1202]pump down with vertx3.6.3 no need to check buff length in A… Mar 18, 2019
NOTICE Updated the year information of the NOTICE files Apr 2, 2019
README.md Added Export Notices in the README.md Jun 6, 2019
pom.xml [SCB-1262] change 1.2.0-SNAPSHOT to 1.3.0-SNAPSHOT in pom.xml Apr 19, 2019

README.md

Java Chassis

Build Status Coverage Status Maven Central License Gitter

Apache 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

Quick Start

Provider service:

import org.apache.servicecomb.*;
@RpcSchema(schemaId = "helloworld")
public class HelloWorldProvider implements HelloWorld {
    public String sayHello(String name) {
        return "Hello " + name;
    }
}

Consumer service:

import org.apache.servicecomb.*;
@Component
public class HelloWorldConsumer  {
	@RpcReference(microserviceName = "pojo", schemaId = "helloworld")
	private static HelloWorld helloWorld;

	public static void main(String[] args) {
		helloWorld.sayHello("Tank");
	}
}

Documentation

Project documentation is available on the ServiceComb website.

Building

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 1.8.

  mvn clean install

If you want to build the release kits from the source

  mvn clean install  -Prelease,distribution

The first build may take a longer than expected as Maven downloads all the dependencies.

Automated Testing

To build the docker image and run the integration tests with docker, you can use maven docker profile

  mvn clean install -Pdocker -Pit

If you are using docker machine, please use the following command

  mvn clean install -Pdocker -Pit -Pdocker-machine

Get The Latest Release

Download Java-Chassis

Get The Latest SNAPSHOT

We publish the snapshot version to Apache nexus repo, please add below repositories into your pom.xml.

   <repositories>
      <repository>
        <releases />
        <snapshots>
          <enabled>true</enabled>
        </snapshots>
        <id>repo.apache.snapshot</id>
        <url>https://repository.apache.org/content/repositories/snapshots/</url>
      </repository>
    </repositories>
    <pluginRepositories>
      <pluginRepository>
        <releases />
        <snapshots>
          <enabled>true</enabled>
        </snapshots>
        <id>repo.apache.snapshot</id>
        <url>https://repository.apache.org/content/repositories/snapshots/</url>
      </pluginRepository>
    </pluginRepositories>

Contact

Bugs: issues

mailing list: subscribe dev

Contributing

See CONTRIBUTING for details on submitting patches and the contribution workflow.

License

Licensed under an Apache 2.0 license.

Export Notice

This distribution includes cryptographic software. The country in which you currently reside may have restrictions on the import, possession, use, and/or re-export to another country, of encryption software. BEFORE using any encryption software, please check your country's laws, regulations and policies concerning the import, possession, or use, and re-export of encryption software, to see if this is permitted. See http://www.wassenaar.org/ for more information.

The Apache Software Foundation has classified this software as Export Commodity Control Number (ECCN) 5D002, which includes information security software using or performing cryptographic functions with asymmetric algorithms. The form and manner of this Apache Software Foundation distribution makes it eligible for export under the "publicly available" Section 742.15(b) exemption (see the BIS Export Administration Regulations, Section 742.15(b)) for both object code and source code.

The following provides more details on the included cryptographic software:

  • Vertx transport can be configured for secure communications
You can’t perform that action at this time.