我正在使用ms-data-core-api库进行项目。所以我做了一些调整,使用mvn package
重新编译它,它给了我一个不同的.jar文件,并使用mvn install:install-file
安装它,所以我可以在我的项目中使用它{{1}文件。到现在为止还挺好。但是,当我尝试在我的项目中使用它时,我遇到了一些pom
个问题。
通过解压缩2.0.5 release jar,它正确地工作但是没有我的修改,我意识到它具有所有的依赖性,虽然我没有(它只有编译)图书馆)。
我没有Maven的经验,所以我做的是:
cannot be resolved
jar内容2.0.5
构建文件夹(使用2.0.6
创建)mvn instal:install-file
部分ms-data-core-api
重新组装。 它仍然无法正常工作,在我需要的类上给出了相同的jar cf myJar.jar tweaked-2.0.5-folder
错误。
通过解压缩在步骤4中创建的最新jar,我意识到它将所有cannot be resolved
内容都包含在一个文件夹中(与2.0.5
同名。
我错过了一些明显的东西吗?我是否错误地打包回tweaked-2.0.5-folder
?或者是否有正确的方法来jar
库,以便它一起构建所有依赖项?
答案 0 :(得分:2)
是的,有正确的方法可以做到这一点。我在这里建议2个选项
您应该运行mvn install
而不是mvn install:install-file
。它将在您的PC的Maven仓库pom.xml
中维护ms-data-core-api的.m2
,当您的项目引用ms-data-core-api时,您的项目将会知道所有依赖项(传递依赖项)
如果您仍想制作包含所有依赖项的胖Jar文件,可以使用Maven Assembly Plugin。我从this pom.xml
看到,他们已经<artifactId>maven-assembly-plugin</artifactId>
了。
您需要运行:mvn package
mvn clean assembly:single
醇>