繁体   English   中英

Maven pom.xml本地依赖关系未解决

[英]Maven pom.xml local dependency not Resolved

使用eclipse mavenjava 1.7我设计了两个名为webservice.staff.backend webservice.webuser.backend后端。

现在,还有一个由某些高级团队成员编写的webservice ,这是git与我共享的Project的另一个模块。

pom.xml此新项目中,添加了两个本地项目依赖项 ,如下所示。

    <dependency>
        <groupId>webservice.staff.backend</groupId>
        <artifactId>webservice.staff.backend</artifactId>
        <version>1.0.0</version>
        <classifier>classes</classifier>
        <type>jar</type>   //used jar but webservices packaging as a war
    </dependency>
    <dependency>
        <groupId>webservice.webuser.backend</groupId>
        <artifactId>webservice.webuser.backend</artifactId>
        <version>1.0.0</version>
        <classifier>classes</classifier>
        <type>jar</type> // used jar but webservices packaging as a war
    </dependency>

但是当我仅尝试执行Maven clean install时,无法解决这些依赖性。 我在较早的webservice项目中发现的内容打包为WAR但此处用作jar

这是pom.xml早期的Project打包类型。

<groupId>webservice.staff.backend</groupId>
    <artifactId>webservice.staff.backend</artifactId>
    <packaging>war</packaging> //packaged as war but used as jar??

<groupId>webservice.webuser.backend</groupId>
    <artifactId>webservice.webuser.backend</artifactId>
    <packaging>war</packaging>  //packaged as war but used as jar in

    /*I Have also Changed packaging as a jar and then clean Install 
      and try to build the New Project but error still the same. */

错误StackTrace

[ERROR] Failed to execute goal on project webservice.credit.backend: Could not resolve dependencies for project webservice.credit.backend:webservice.credit.backend:war:2.0.0: The following artifacts could not be resolved: webservice.staff.webservice.staff.backend:jar:classes:1.0.0, webservice.webuser.backend:webservice.webuser.backend:jar:classes:1.0.0: Failure to find webservice.staff.backend:webservice.staff.backend:jar:classes:1.0.0 in http://download.java.net/maven/2/ was cached in the local repository, resolution will not be reattempted until the update interval of Java.Net has elapsed or updates are forced -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.

注意 :-在这方面,我已经尝试了很多方法以及关于stackOverflow许多答案,但是没有stackOverflow我提供正确的解决方案。

请帮助任何人解决此问题。

终于 !!!
得到了解决方案。

我在cleaninstall过程中需要执行的操作使用mvn添加额外的param以导出类文件。 参数==> -Dattach.and.archive.classes=truemvn命令。

mvn clean install -Dattach.and.archive.classes=true //added one extra param
   // -Dattach.and.archive.classes=true solved my dependency Problem.

注意 :-如果您在pom.xml中将Project打包定义为war并希望将jar作为依赖项在本地maven存储库中。 只需在mvn将此附加选项与-Dattach.and.archive.classes=true一起使用即可。

删除<classifier>classes</classifier>

<dependency>
    <groupId>webservice.staff.backend</groupId>
    <artifactId>webservice.staff.backend</artifactId>
    <version>1.0.0</version>
    <type>jar</type>
</dependency>
<dependency>
    <groupId>webservice.webuser.backend</groupId>
    <artifactId>webservice.webuser.backend</artifactId>
    <version>1.0.0</version>
    <type>jar</type>
</dependency>

两个项目的pom都一样,除了包装是jar:

<groupId>webservice.staff.backend</groupId>
<artifactId>webservice.staff.backend</artifactId>
<packaging>jar</packaging>
<version>1.0.0</version>

<groupId>webservice.webuser.backend</groupId>
<artifactId>webservice.webuser.backend</artifactId>
<packaging>jar</packaging>
<version>1.0.0</version>

确保您的settings.xml如下所示:

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      https://maven.apache.org/xsd/settings-1.0.0.xsd">
  <localRepository>${user.home}/.m2/repository</localRepository>
  <interactiveMode>true</interactiveMode>
  ------
</settings>

在这里上传了样本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM