【发布时间】:2019-01-14 21:15:45
【问题描述】:
我想在 .m2 中为 maven 项目创建版本控制结构文件夹
以下我在 pom.xml 中所做的更改
<modelVersion>4.0.0</modelVersion>
<groupId>com.XXXXXX.cm</groupId>
<artifactId>state-node</artifactId>
<version>1.5.0/1.0</version>
<packaging>jar</packaging>
<name>state-node</name>
<build>
<finalName>${project.artifactId}</finalName>
</build
输出:
.m2\repository\com\XXXXXX\cm\state-node\1.5.0\1.0\state-node-1.5.0\1.0.jar
预期输出:
.m2\repository\com\XXXXXX\cm\state-node\1.5.0\1.0\state-node-1.5.0.jar
1.5.0 是我的依赖版本,1.0 是我的项目版本。 项目要求是,如果我使用依赖项(1.5.0)来构建同一个项目,那么 jar 文件夹结构应该在我的 .m2 文件夹 1.5.0\1.0\state-node-1.5.0.jar 中, 如果我们在我的项目中使用相同版本的依赖项进行一些修改,那么 jar 文件夹结构应该在 .m2 文件夹 1.5.0\2.0\state-node-1.5.0.jar 我们将在 pom.xml 中手动将版本 1.0 更新为 2.0,以防我们进行一些修改
我怎样才能做到这一点。
【问题讨论】:
-
<version>1.5.0/1.0</version>应该是<version>1.5.0</version> -
删除 /1.0?我认为更多细节可能会有所帮助。
-
@DKAnsh : 1.5.0 是我的依赖版本,1.0 是我的项目版本。实现这一点的原因如果我使用依赖项(1.5.0)来构建相同的项目,那么 jar 在我的 .m2 文件夹 1.5.0\1.0\state-node-1.5.0.jar 中,如果我使用相同版本的依赖项进行一些修改那么我的项目 jar 应该在我的 .m2 文件夹 1.5.0\2.0\state-node-1.5.0.jar
-
避免这种情况。使用带有 / 的版本号肯定会以意想不到的方式破坏事情。使用 .m2 中的文件夹结构更糟糕。坚持使用通常的版本号。我不明白您的“依赖版本”和“项目版本”的含义,但是如果您确实需要两个数字,请使用 1.5.0-1 和 1.5.0-2 之类的版本。