0

我在 Maven Eclipse 集成方面遇到问题。我能够使用作为配置文件运行来编译项目,并且在命令提示符下一切都很好

但是在 Eclipse Markers 中,当我更新/编译时出现以下错误

ArtifactDescriptorException: 无法读取 hiddeninfo:jar:27.0.0-${env}-SNAPSHOT 的工件描述符: ArtifactResolutionException: 无法从 http://hiddeninfo/nexus 传输 hiddeninfo:pom:27.0.0-${env}-SNAPSHOT /content/groups/public 已缓存在本地存储库中,直到 public 的更新间隔已过或强制更新后才会重新尝试解析。

原始错误:无法将工件 hiddeninfo:pom:27.0.0-${env}-SNAPSHOT 从/到公共传输(http://hiddeninfo/nexus/content/groups/public):索引 106 处路径中的非法字符:http ://hiddeninfo/nexus/content/groups/public/hiddeninfo-27.0.0-${envs}-SNAPSHOT.pom

我删除了存储库文件夹并再次更新。还是同样的问题。我很确定我们实际上作为参数传递的这个“$env”背后的原因。

在命令提示符下,此命令有效:

mvn clean install -Penv-itt

但以下命令会引发与上述相同的错误:

mvn clean install

那么如何修改 Maven 更新项目以接受参数或其他解决方法来摆脱 Eclipse 中的这些错误?

4

1 回答 1

2

我假设您使用的是m2e如果是这样,那么您可以通过查看属性并选择Maven > Active Maven Profiles来激活特定项目的配置文件。

以下命令行有效的事实:

mvn clean install -P env-itt

意味着您的 POM 必须列出一个名为env-itt. 大概这个配置文件定义了一个名为 的 Maven 属性env,它解释了为什么在您没有激活配置文件时构建会中断。

因此,在您的情况下,您应该指定env-itt触发正确的配置文件。

于 2012-10-12T07:05:20.573 回答