我正在尝试从多模块Maven项目构建一个独立的.jar。
项目结构是
EMA-服务器/ shared /#与Java客户端共享 rest-api / #Spring REST API server /#为独立服务器提供main()并将所有服务器捆绑在一起 web /#一个简单的AngularJS Web服务器
server/
模块的存在是为了构建独立 .jar
。为此,它取决于包含rest-api/
的{{1}}模块。
你可以take a look我绝望地尝试做这项工作,但这是我目前的“解决方案”:
@SpringBootApplication
模块的 pom.xml :
server/
我想在此声明,如果我在Eclipse中运行这个东西作为Java应用程序一切正常。
但是,如果我运行“独立”<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
<mainClass>org.ema.server.Server</mainClass>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2-beta-5</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>org.ema.server.Server</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>assemble-all</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
,我会得到:
java "*" org.ema.server.Server
您可以查看完整输出here。
有人可以告诉我如何才能完成这项工作吗?
如果我能提供进一步的信息,请告诉我。