2

我在本地 Nexus Maven 存储库中添加了一堆工件。
当我构建我的项目时,我收到以下错误:

[INFO] 正在扫描项目...
[INFO] -------------------------------------------------- ----------------------------------
[INFO] 构建 pronto-web Java EE 6 Webapp
[INFO] 任务-段:[验证]
[INFO] ------------------------------------------ ------------------------------
[INFO] [resources:resources {execution: default-resources}]
[WARNING] 使用平台编码(实际上是 Cp1252)复制过滤的资源,即构建依赖于平台!
[INFO] 复制 4 个资源
[INFO] [compiler:compile {execution: default-compile}]
[WARNING] 文件编码尚未设置,使用平台编码 Cp1252,即构建依赖于平台!
[INFO] 将 1 个源文件编译到 C:\Source\Pronto\pronto\pronto-web\target\classes
[INFO] [antrun:run {execution: remove-javax}]
[INFO] 执行任务
[INFO] 执行任务
[ INFO] [gwt:compile {execution: default}]
[INFO] 使用来自项目依赖项的 GWT jar:20100714-SNAPSHOT
[警告] 您不应将 gwt-dev 声明为项目依赖项。这可能会引入复杂的依赖冲突
下载:http://mercury:8980/nexus/content/groups/public-snapshots/com/google/gwt/gwt-dev/20100714-SNAPSHOT/gwt-dev-20100714-20100715.053026-1- windows.jar
[信息] -------------------------------------------- ----------------------------
[错误] 构建错误
[信息] --------------------------------------------- -------------------------
[INFO] 工件未找到 - 无法在存储库中找到资源

尝试从项目网站手动下载文件。

然后,使用以下命令安装它:
mvn install:install-file -DgroupId=com.google.gwt -DartifactId=gwt-dev -Dversion=20100714-20100715.053026-1 -Dclassifier=windows -Dpackaging=jar -Dfile=/path/到/文件

或者,如果您托管自己的存储库,您可以在那里部署文件:
mvn deploy:deploy-file -DgroupId=com.google.gwt -DartifactId=gwt-dev >-Dversion=20100714-20100715.053026-1 -Dclassifier=windows -Dpackaging =jar -Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id]

com.google.gwt:gwt-dev:jar:20100714-20100715.053026-1

从指定的远程存储库:
发布(http://mercury:8980/nexus/content/groups/public)、
全部(http://mercury:8980/nexus/content/groups/all)、
快照(http://水星:8980/nexus/content/groups/public-snapshots

http://mercury:8980/nexus/content/groups/public-snapshots/com/google/gwt/gwt-dev/20100714-SNAPSHOT/gwt-dev-20100714-20100715.053026-1-windows.jar
[信息] -- -------------------------------------------------- --------------------
[INFO] 有关更多信息,请使用 -e 开关运行 Maven
[INFO] ------------- -------------------------------------------------- ---------
[INFO] 总时间:8 秒
[INFO] 完成时间:Thu Jul 15 08:57:29 CEST 2010
[INFO] Final Memory: 50M/614M
[INFO] ----- -------------------------------------------------- -----------------

有谁知道为什么 maven 认为应该在工件名称中添加“-windows”?(下载:http://mercury:8980/nexus/content/groups/public-snapshots/com/google/gwt/gwt-dev/20100714-SNAPSHOT/gwt-dev-20100714-20100715.053026-1-windows.jar)

如果我浏览存储库,它包含工件但没有“-windows”后缀。

这个工件的旧版本是平台相关的,并且有“windows”或“linux”或“mac”作为分类器,但最近的版本是平台独立的,我的 poms 中没有任何这样的分类器。

PS:我在协议和冒号之间的每个 URL 中添加了一个空格,因为我还没有获得足够的声誉来发布链接。

4

1 回答 1

3

必须在某处声明以下依赖项,很可能是传递依赖项:

<dependency>
  <groupId>com.google.gwt</groupId>
  <artifactId>gwt-dev</artifactId>
  <version>20100714-SNAPSHOT</version>
  <classifier>windows</classifier>
<dependency>

如果工件不再依赖于平台,我怀疑是一个糟糕的 pom。

您可以使用任何更新的快照吗?

于 2010-07-15T07:37:38.557 回答