因此,我尝试在另一个项目(测试框架)中添加一个 spring boot 可执行 jar 作为依赖项。
但是一旦添加到 pom 并导入。 Java 导入无法正常工作。如果我查看 jar 内部,所有包都带有以下前缀:
BOOT-INF/classes.some.package.classname.class
还有一些spring boot相关的包,MANIFEST等等。
如果我将 spring boot 应用程序的构建切换为仅使用 spring-boot-maven-plugin 安装和部署常规 jar,则不会
这发生了变化,一切正常。不幸的是,这不是我们的解决方案,因为我们依赖可执行 jar 作为发布过程的一部分。
我可以构建部署两个版本的 jar 并使用分类器来确定每个版本吗?
Thanks
事实证明,这个场景可以使用 spring-boot-maven-plugin 来实现。
Spring Boot应用程序的pom:
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>1.4.1.RELEASE</version>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
<configuration>
<classifier>exec</classifier>
</configuration>
</execution>
</executions>
...
</plugin>
使用 spring boot jar 的项目可以正常添加:
<dependency>
<groupId>com.springboot</groupId>
<artifactId>app</artifactId>
<version>1.0.0-SNAPSHOT</version>
<scope>test</scope>
</dependency>
或者如果您想引用可执行 jar
<dependency>
<groupId>com.springboot</groupId>
<artifactId>app</artifactId>
<version>1.0.0-SNAPSHOT</version>
<scope>test</scope>
<classifier>exec</classifier>
</dependency>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)