我正在一个10年前开始的项目中工作。现在这里的一切都是一团糟。我正面临着maven的问题。
maven的存储库结构是这样的:
.m2/repository/com/company/project/
项目文件夹里面有不同版本的文件夹。像
15.10.4
15.10.5
15.10.6
15.10.7
我们的项目分为两个模块。当我们构建第一个模块时,jar安装在maven存储库中,然后我们在类路径中添加此存储库并在第二个模块中使用它们。
现在的问题是我正在建设中使用 mvn clean install 在目标文件夹中我得到project-name-15.10.8.jar。问题是这些罐子应该放在文件夹15.10.8中,但那里没有该名称的文件夹。即使我在存储库中创建名为15.10.8的文件夹,也没有安装jars。我检查了pom.xml和profile.xml,到处提到的版本只有15.10.8。我应该在哪里寻找合适的配置,以便找出问题所在?
解决方案:
我找到了解决方案。实际上在$ MAVEN_HOME / settings.xml中本地存储配置为C:/ MAVEN_REPO / 我不知道如何,但它被更改为默认,如在C:/ user / username / .... 我将其更改回C:/ MAVEN_REPO,现在正在正确的目录中构建jar。
在摆弄maven配置文件时,我发现这个构建目录名由profile.xml控制。
现在我正在研究maven对个人资料的解释。
感谢大家。
答案 0 :(得分:0)
由于您在目标文件夹中有一个构建文件,因此请尝试触发安装目标,使用以下命令在本地存储库中显式移动它:
mvn install:install-file -Dfile=$PATH_TO_PROJECT_ROOT/target/project-name-15.10.8.jar -DgroupId=com.company.project -DartifactId=project-name -Dversion=15.10.8 -Dpackaging=jar
PS:pom.xml文件中的一个片段对于解决问题非常有用。