问题标签 [maven-scm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
113 浏览

git - Maven 发布:准备在使用 CI 时无法提交到 Git 存储库

我使用 Quickbuild 作为我的 CI。使用 Maven 的发布管理插件并运行release:prepare命令时,将标签提交到我的 Git 存储库时出现错误。这很可能是因为权限错误。

我已经阅读了使用 Maven 选项的解决方案,-Dusername=<username> -Dpassword=<password但鉴于多个用户可以看到此配置,我更愿意隐藏或加密凭据。

我在网上没有找到任何东西,想知道是否有人遇到过这个问题。

0 投票
1 回答
257 浏览

maven - maven scm 不监听 perforce 触发器输出

您好 Maven / Perforce 专家,

我正在尝试为使用 Perforce 作为 VCS 的项目实现 Maven 工件的自动版本控制。这让我选择了 maven-scm-plugin 和 maven-release-plugin 来实现我的目的。我们在 perforce 中使用触发器,它检查每个提交的 xml 内容中的违规行为。

不幸的是,当我运行命令“mvn -X -e -B scm:edit release:update-versions scm:checkin”来编辑文件、更新版本并提交到 perforce 时,maven 不尊重 perforce 触发器的结果并且构建失败。但是,正如您所见,更改最终会提交给 perforce。

使用已启用触发器的 XML 的堆栈跟踪

我在本地提交了文件以确保 perforce 触发器不会吐出失败状态代码,并且它实际上也返回了 SUCCESS。我不确定为什么 maven 不会尊重 perforce 触发器。

我使用未启用 perforce 触发器的 txt 文件测试了一个场景,并且 maven 将构建结果返回为 SUCCESS,因为从技术上讲,它不会通过 perforce 触发器

使用没有触发的 TXT 进行堆栈跟踪

问题:

  1. 有没有人经历过 maven 的这种行为,你是如何解决的?
  2. 你知道是否可以为特定文件禁用 perforce 触发器,这样 perforce 甚至不会通过触发器
0 投票
1 回答
8065 浏览

maven - Maven 自动增量发布版本

我正在努力在X.Y.Z构建过程中自动增加版本。在这种情况下,我们不会删除SNAPSHOT后缀(使其成为发布版本),而是增加版本的次要部分:

  • X.Y.Z-SNAPSHOT=>X.Y.Z+1-SNAPSHOT
  • 不是 X.Y.Z-SNAPSHOT=>X.Y.Z

我不能使用 maven 发布插件,因为它只能切断SNAPSHOT后缀以使其发布版本。因此,我最终创建了一个自定义脚本,该脚本具有增加版本的逻辑。

我的问题是如何最好地实施以下步骤:

  1. pom.xml从 perforce 中查看。
  2. 运行自定义脚本以增加版本。
  3. pom.xml如果部署成功,则提交更改。

我创建了一个autoversion部分满足上述需求的 Maven 配置文件。作为生成资源阶段的一部分,Maven 首先增加版本。但是,它最终会部署旧版本的项目。

非常感谢任何实现该要求的指针。

0 投票
1 回答
973 浏览

git - 在 git 上发布 maven 的问题

我有一个非常奇怪的问题:每次我想发布我的开源项目(托管在 github 上)时,maven 都会将快照上传到我的存储库,而不是预期的发布。

我发现,问题是发布标签(git)的 pom 包含一个快照版本。这似乎意味着 release:prepare 没有为发布标签设置正确的发布版本。

我正在使用 maven 3.2.3 和 git 2.0.1。

这里的 pom.xml 。

欢迎每一个提示。

0 投票
1 回答
122 浏览

maven-scm - 我找不到任何可选参数来在命令行上传递 RTC 工作项编号

错误代码如下:

[错误]“交付”失败。未满足先决条件:工作项必须与变更集相关联。org.apache.maven.lifecycle.LifecycleExecutionException: 无法执行目标 org.apache.maven.plugins:maven-release-plugin:2.5:prepare (default-cli) on project junit-ext: Unable to commit files 提供者消息:错误Jazz SCM 交付命令的代码 - 17

尝试使用以下命令

mvn --batch-mode -B -Dresume=false 发布:准备 -X

有没有办法在没有任何工作项的情况下强制交付?

0 投票
3 回答
990 浏览

git - TC 在 git 项目名称中包含空格的文件失败

    在 TC 构建期间,我遇到了这样的问题:

     这意味着某些东西正在将带有空格的文件路径更改为字符 1,即 %20。
我们在本地尝试在 maven 中做同样的事情:

     它在某些随机开发环境中表现良好,在 TC 代理环境中也能正常工作。
     另一点:我已经尝试过 scm:add 这样的文件,但它禁止这样做。所以我就是这样,但 mvn prepare 运行良好并提交并将数据推回。
    但是teamcity建设一次又一次地失败。我们在 TC 结帐后检查了代理上的路径,它不包含任何 %20,而是包含空格。所以结帐它执行没有这样的问题。
     我已经用 git 进行了一些实验,它可以很好地执行这些文件,我们没有看到任何问题。

     它可能是什么以及如何解决它?会不会是scm的问题?
PS我们看不到TC内部配置,因为没有访问权限,只能通过Web界面。

0 投票
1 回答
26507 浏览

maven - scm 连接与 developerConnection

谁能告诉我maven中scm连接和developerConnection之间的区别?

我正在尝试使用它来构建mvn release:prepare,它需要其中之一。

[错误] 无法执行目标 org.apache.maven.plugins:maven-release-plugin:2.3.2:prepare (default-cli) on project was-topology-legacy-dsl: Missing required setting: scm connection or developerConnection must被指定。-> [帮助 1]

0 投票
1 回答
891 浏览

git - 如何使用发布插件提交替换的属性

我们在尝试提交更改时遇到问题,这发生在 Maven 中。因为它们在目标文件夹中,我们怎么能这样做?

通过资源过滤替换。在我们拥有的属性中

那是我们的属性,并且这样的标记也出现在某些文件中-在更改它们之后,我们应该将其提交给 git

我们也通过 Maven 发布插件进行整个发布,所以最终的命令看起来像

此发布插件使用 scm:

向 scm 插件添加包含和排除属性对我们没有帮助。

这些更改后如何进行反向提交?或者我们如何更改我们的文件然后提交这些更改,maven replacer 插件会有帮助吗?

0 投票
1 回答
139 浏览

java - 如何防止 artifactId 被附加到连接 URI?

我正在尝试<SCM>在父 pom 中定义我的连接标签。但是,由于我使用的提供者(Jazz),我不希望我的 artifactId 被附加到子工件中。

我发现对旧线程的引用表明将尾随 / 附加到连接 URI 会阻止 artifactId 被附加,但事实并非如此。

例如,如果以下内容在我的父 pom 中:

我孩子的有效 pom 显示这种联系是:

我想防止child-module-name被附加到连接字符串。我在一个旧线程上读到,将尾随 / 附加到父级的连接字符串会阻止子级的 artifactId 被附加,但情况似乎并非如此。

我正在使用 Maven 3.2.3。

有没有办法做到这一点?

0 投票
3 回答
3093 浏览

maven - 获取依赖许可证

我们需要获得服务依赖项的所有许可证。虽然很容易从报告插件(或mojohaus 的 license-maven-plugin)中获取它们,但我们的律师希望我们真正找到每个依赖项的来源并获取许可证文件。你知道我们怎样才能做到这一点吗?

作为替代方案 - 如何获取工件的 scm 连接 URL?我可以自己使用这些信息来自动化这样的过程。