/maven-service-factory-api 这个例子允许动态发布:位于本地的maven或maven repository的vertx的模块。
修改pom增加vertx-maven-service-factory
<dependencies>
<dependency>
<groupId>io.vertx</groupId>
<artifactId>vertx-core</artifactId>
<version>${project.version}</version>
</dependency>
<!--增加vertx-maven-service-factory-->
<dependency>
<groupId>io.vertx</groupId>
<artifactId>vertx-maven-service-factory</artifactId>
<version>3.2.1</version>
</dependency>
</dependencies>
public class Test {
public static void main(String[] args) {
List<String> urls = new ArrayList<String>();
urls.add("http://repo.fangbaba.com/nexus/content/repositories");
Future<String> future = Future.future();
Vertx vertx = Vertx.vertx();
System.err.println(vertx.hashCode());
vertx.registerVerticleFactory(new MavenVerticleFactory(
new ResolverOptions()
.setLocalRepository("/Users/zzy/Documents/work/maven/repository/")
.setRemoteRepositories(urls))
);
vertx.deployVerticle("maven:io.vertx:maven-service-factory-verticle:3.2.1::my-verticle", ar -> {
if (ar.succeeded()) {
future.complete();
} else {
future.fail(ar.cause());
}
});
}
}
项目 /maven-service-factory-verticle 进行mvn install。
setRemoteRepositories设置了远程的资源地址
运行Test的main。
然后就可以访问http://localhost:8080了