Java 在spring引导应用程序中复制依赖项
我有一个SpringBoot应用程序,在maven安装期间,我希望它创建一个jar并将依赖项复制到一个lib文件夹中。我正在尝试使用这两个maven插件,它们在其他maven项目中运行良好,但在spring引导应用程序中不起作用Java 在spring引导应用程序中复制依赖项,java,spring,maven,spring-boot,Java,Spring,Maven,Spring Boot,我有一个SpringBoot应用程序,在maven安装期间,我希望它创建一个jar并将依赖项复制到一个lib文件夹中。我正在尝试使用这两个maven插件,它们在其他maven项目中运行良好,但在spring引导应用程序中不起作用 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artif
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<useDefaultManifestFile>true</useDefaultManifestFile>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>xxx.Main</mainClass>
<classpathPrefix>lib/</classpathPrefix>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<phase>install</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/lib</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
org.apache.maven.plugins
maven jar插件
真的
真的
xxx.Main
解放党/
maven依赖插件
安装
复制依赖项
${project.build.directory}/lib
发生的事情是,即使省略了maven jar插件,也会创建jar。它对maven依赖插件没有任何作用。所以它几乎忽略了这两个插件。我认为您应该尝试Spring boot+Gradle:
在build.gradle文件中,您可以自定义构建过程,并使用gradle copy方法将依赖项复制到lib文件夹中。我在复制依赖项之后放置了Spring引导插件,工作正常
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
org.springframework.boot
springbootmaven插件
注意:我清理Maven存储库来工作 你试过了吗?@安东:我没见过。看来这就是我要找的。我会试试看。非常感谢。好吧,我试过了。它仍然没有告诉我如何将依赖项复制到外部文件夹。为什么要将依赖项复制到外部文件夹?!您的jar应该包含您所需的所有内容,这样您就不必再处理其他文件夹了。还有其他团队构建的其他应用程序,它们共享许多常见的jar(Hibernate、spring等)。如果我把它们放在一个外部文件夹中,那么将来可以共享这些依赖项。