maven尝试下载localy存在的jar

时间:2011-04-21 12:12:04

标签: maven-2 netbeans

我将jar下载到我当地的reposotory但是每次我编译netbeans尝试下载它为什么会发生这种情况我尝试更改依赖范围但我无法找出解决方案。这是我的依赖我也尝试提供,运行时...                      jregex             jregex             1.2_01             编         

Netbeans输出如下,我使用netbeans建议maven命令将manualy下载的jregex jar存储到我的本地存储库,我还有其他dependend jar实例化并存储我的本地存储库。

[警告]使用平台编码(实际上是UTF-8)来复制过滤后的资源,即构建依赖于平台! 复制3个资源 正在下载:http://repository.jboss.org/maven2//jregex/jregex/1.2_01/jregex-1.2_01.pom 无法在存储库repository.jboss.org(http://repository.jboss.org/maven2/)中找到资源'jregex:jregex:pom:1.2_01' 正在下载:http://download.java.net/maven/2//jregex/jregex/1.2_01/jregex-1.2_01.pom 无法在存储库java.net(http://download.java.net/maven/2/)中找到资源'jregex:jregex:pom:1.2_01' 正在下载:http://repo1.maven.org/maven2/jregex/jregex/1.2_01/jregex-1.2_01.pom 无法在资源库中心找到资源'jregex:jregex:pom:1.2_01'(http://repo1.maven.org/maven2)

3 个答案:

答案 0 :(得分:2)

cd到包含jregex-1.2_01.jar文件的目录并运行以下命令:

mvn install:install-file -DgroupId=jregex -DartifactId=jregex -Dversion=1.2_01 -Dpackaging=jar -Dfile=jregex-1.2_01.jar

这将在您的本地存储库中安装jar,如您所编写的依赖项所示,这是(如果我理解正确的话):

    <dependency>
        <groupId>jregex</groupId>
        <artifactId>jregex</artifactId>
        <version>1.2_01</version>
    </dependency>

如果您想摆脱警告,您还可以添加

 <build>
     <plugins>
         <plugin>
             <groupId>org.apache.maven.plugins</groupId>
             <artifactId>maven-resources-plugin</artifactId>
             <configuration>
                 <encoding>UTF-8</encoding>
             </configuration>
         </plugin>
         // ...
     </plugins>
     // ...
</build>

更新:检查POM本身(jregex-1.2_01.pom)是否真的在您的本地存储库中。也许这是显而易见的,你已经做到了,但我没有想法:)由于某种原因,它可能是那里的罐子,但pom不是。如果不是这种情况,那么当maven运行时和从控制台安装jar时,本地存储库之间会出现某种不匹配,但我无法弄清楚如何。

答案 1 :(得分:0)

  • 您的依赖关系可能位于错误的目录中
  • 您的“settings.xml”文件可能指向不存在依赖项的本地路径。

如果您想进一步解释,您应该从pom.xml,settings.xml和依赖项的路径发布一个摘录...

答案 2 :(得分:0)

或您的依赖项在远程存储库中没有pom文件,并且maven会重新尝试下载它。

请尝试使用最近发布的nb 7.0,它嵌入了uptodate maven 3.x二进制文件。