web-dev-qa-db-de.com

Maven-Abhängigkeiten können nicht aufgelöst werden

Ich benutze Apache Maven3 und seit zwei oder drei Tagen können einige Abhängigkeiten nicht mehr aufgelöst werden, die zuerst kein Problem hatten. Um genauer zu sein, ist es:

  1. maven-findbgs-plugin:plugin:1.3.1
  2. maven-cobertura-plugin:plugin:1.3

Sollten sie nicht von maven selbst aufgenommen werden?

Meine pom.xml-Datei:

<project xmlns="http://maven.Apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.Apache.org/POM/4.0.0 http://maven.Apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <artifactId>xyz</artifactId>
  <name>xyz</name>
  <description>xyz</description>
  <repositories>
      <repository>  
        <id>prime-repo</id>  
        <name>PrimeFaces Maven Repository</name>  
        <url>http://repository.primefaces.org</url>  
        <layout>default</layout>  
    </repository>  
  </repositories>
  <dependencies>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>${springframework-version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.webflow</groupId>
        <artifactId>spring-faces</artifactId>
        <version>${springwebflow-version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-core</artifactId>
        <version>${springsecurity-version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-config</artifactId>
        <version>${springsecurity-version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-web</artifactId>
        <version>${springsecurity-version}</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${org.slf4j-version}</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jcl-over-slf4j</artifactId>
        <version>${org.slf4j-version}</version>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>${org.slf4j-version}</version>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.16</version>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>javax.inject</groupId>
        <artifactId>javax.inject</artifactId>
        <version>1</version>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>servlet-api</artifactId>
        <version>2.5</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>javax.servlet.jsp</groupId>
        <artifactId>jsp-api</artifactId>
        <version>2.1</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
    </dependency>
    <!-- Communication to PowerTAC Server -->

      <dependency>
      <groupId>joda-time</groupId>
      <artifactId>joda-time</artifactId>
      <version>2.0</version>
    </dependency>
    <dependency>
      <groupId>com.thoughtworks.xstream</groupId>
      <artifactId>xstream</artifactId>
      <version>1.4.1</version>
      <type>jar</type>
      <scope>compile</scope>
    </dependency>
    <dependency>
    <groupId>javax.jms</groupId>
    <artifactId>jms-api</artifactId>
    <version>1.1-rev-1</version>
</dependency>
<dependency>
    <groupId>org.Apache.activemq</groupId>
    <artifactId>activemq-all</artifactId>
    <version>5.5.1</version>
</dependency>
<dependency>
    <groupId>activecluster</groupId>
    <artifactId>activecluster</artifactId>
    <version>20040423.075722</version>
</dependency>
<dependency>
    <groupId>xmlbeans</groupId>
    <artifactId>xbean</artifactId>
    <version>2.0.0</version>
</dependency>
<dependency>
    <groupId>javacc</groupId>
    <artifactId>javacc</artifactId>
    <version>4.0</version>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-jms</artifactId>
    <version>3.0.6.RELEASE</version>
</dependency>
<dependency>
    <groupId>commons-httpclient</groupId>
    <artifactId>commons-httpclient</artifactId>
    <version>3.1</version>
</dependency>
<dependency>
    <groupId>org.jboss.spec.javax.ws.rs</groupId>
    <artifactId>jboss-jaxrs-api_1.1_spec</artifactId>
    <version>1.0.0.Final</version>
</dependency>
<dependency>
    <groupId>org.jdom</groupId>
    <artifactId>jdom</artifactId>
    <version>1.1.2</version>
</dependency>




    <!-- Sun Mojarra JSF 2 runtime -->
    <dependency>
        <groupId>com.Sun.faces</groupId>
        <artifactId>jsf-api</artifactId>
        <version>2.0.3</version>
    </dependency>
    <dependency>
        <groupId>com.Sun.faces</groupId>
        <artifactId>jsf-impl</artifactId>
        <version>2.0.3</version>
    </dependency>
    <dependency>
        <groupId>javax.validation</groupId>
        <artifactId>validation-api</artifactId>
        <version>1.0.0.GA</version>
    </dependency>
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-validator</artifactId>
        <version>4.0.2.GA</version>
    </dependency>
      <dependency>
       <groupId>org.hibernate</groupId>
       <artifactId>hibernate-core</artifactId>
       <version>3.3.2.GA</version>
    </dependency>
    <dependency>
       <groupId>org.hibernate</groupId>
       <artifactId>hibernate-annotations</artifactId>
       <version>3.4.0.GA</version>
    </dependency>
    <dependency>
       <groupId>org.hibernate</groupId>
       <artifactId>hibernate-commons-annotations</artifactId>
       <version>3.3.0.ga</version>
    </dependency>
    <dependency>
       <groupId>org.hibernate</groupId>
       <artifactId>hibernate-entitymanager</artifactId>
       <version>3.4.0.GA</version>
    </dependency> 
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.7</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>javax.ejb</groupId>
        <artifactId>ejb-api</artifactId>
        <version>3.0</version>
    </dependency>
        <!-- PrimeFaces component library -->
    <dependency>
        <groupId>org.primefaces</groupId>
        <artifactId>primefaces</artifactId>
        <version>2.2.1</version>
    </dependency>
    <dependency>
        <groupId>org.powertac</groupId>
        <artifactId>server-interface</artifactId>
        <version>0.0.1-SNAPSHOT</version>
    </dependency>
  </dependencies>
  <packaging>war</packaging>
  <properties>
    <Java-version>1.5</Java-version>
    <springframework-version>3.0.5.RELEASE</springframework-version>
    <springwebflow-version>2.3.0.RELEASE</springwebflow-version>
    <springsecurity-version>3.0.3.RELEASE</springsecurity-version>
    <org.slf4j-version>1.5.10</org.slf4j-version>
  </properties>
  <groupId>org.powertac</groupId>
  <version>0.0.1-SNAPSHOT</version>
</project>

In meiner IDE (Springsource Tool Suite) erhalte ich die folgende Warnung Warning of IDE

Wenn ich in meiner Shell so etwas wie "mvn compile" mache, tritt der folgende Fehler auf:

[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building xcz 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[WARNING] The artifact javacc:javacc:jar:4.0 has been relocated to net.Java.dev.
javacc:javacc:jar:4.0
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.193s
[INFO] Finished at: Sun Dec 04 10:11:47 CET 2011
[INFO] Final Memory: 9M/160M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project xyz: Could not resolve depend
encies for project xyz:war:0.0.1-SNAPSHOT: The following a
rtifacts could not be resolved: maven-plugins:maven-cobertura-plugin:plugin:1.3,
 maven-plugins:maven-findbugs-plugin:plugin:1.3.1, Failure to find maven-plugins:maven-cobertura-plugin:plugin
:1.3 in http://repository.primefaces.org was cached in the local repository, res
olution will not be reattempted until the update interval of prime-repo has elap
sed or updates are forced -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e swit
ch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please rea
d the following articles:
[ERROR] [Help 1] http://cwiki.Apache.org/confluence/display/MAVEN/DependencyReso
lutionException

Wenn ich die unten genannten Plugins einsetze und mvn site mache, wird folgende Fehlermeldung angezeigt:

[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building xyz 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
Downloading: http://repo1.maven.org/maven2/org/primefaces/primefaces/2.2.1/prime
faces-2.2.1.pom
[WARNING] The POM for org.primefaces:primefaces:jar:2.2.1 is missing, no depende
ncy information available
[WARNING] The artifact javacc:javacc:jar:4.0 has been relocated to net.Java.dev.
javacc:javacc:jar:4.0
Downloading: http://repo1.maven.org/maven2/org/primefaces/primefaces/2.2.1/prime
faces-2.2.1.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.609s
[INFO] Finished at: Sun Dec 04 10:35:51 CET 2011
[INFO] Final Memory: 9M/160M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project xyz: Could not resolve depend
encies for project xyz:war:0.0.1-SNAPSHOT: The following a
rtifacts could not be resolved: maven-plugins:maven-cobertura-plugin:plugin:1.3,
 maven-plugins:maven-findbugs-plugin:plugin:1.3.1, org.primefaces:primefaces:jar
:2.2.1: Failure to find maven-plugins:maven-cobertura-plugin:plugin:1.3 in http:
//repo1.maven.org/maven2 was cached in the local repository, resolution will not
 be reattempted until the update interval of central 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 swit
ch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please rea
d the following articles:
[ERROR] [Help 1] http://cwiki.Apache.org/confluence/display/MAVEN/DependencyReso

Jede Hilfe wird sehr geschätzt.

10

Sie sollten diese beiden Plugins zu Ihrem Pom hinzufügen.

Für Cobertura siehe diese Seite .

Findbugs finden Sie unter diese Seite .

----- AKTUALISIERTE -----

OK, ich habe das Problem gefunden. Es scheint, dass Sie auf jdom 1.1.2 angewiesen sind, das von jaxen 1.1.3 abhängt, von dem das Artefakt gebrochen ist.

Sie können entweder eine andere Jdom-Version ausprobieren oder die in this site beschriebene Momentaufnahme zu Ihrem pom hinzufügen. Hat für mich gearbeitet, als ich deinen Pom auf meinem PC lief. Ich habe den Schnappschuss kopiert:

<dependency>
  <groupId>jaxen</groupId>
  <artifactId>jaxen</artifactId>
  <version>1.1.3</version>
  <!-- http://jira.codehaus.org/browse/JAXEN-217 -->
  <exclusions>
    <exclusion>
      <groupId>maven-plugins</groupId>
      <artifactId>maven-cobertura-plugin</artifactId>
    </exclusion>
    <exclusion>
      <groupId>maven-plugins</groupId>
      <artifactId>maven-findbugs-plugin</artifactId>
    </exclusion>
  </exclusions>
</dependency>
24
yair

Für diejenigen, die versuchen, es mit Ivy zu beheben. Dieser hat für mich gearbeitet:

<dependency org="jaxen" name="jaxen" rev="1.1.4"/>
<dependency org="net.sourceforge.cobertura" name="cobertura" rev="1.9.4.1"/>
<dependency org="com.google.code.findbugs" name="findbugs" rev="2.0.1"/>
<dependency org="org.jdom" name="jdom" rev="2.0.2">
  <exclude module="jaxen"/>
  <exclude name="maven-cobertura-plugin"/>
  <exclude name="maven-findbugs-plugin"/>
</dependency>
3
marfnk

Suchen Sie in Ihrem lokalen Repository (normaly in <home>/.m2), wo sich die Artefakte befinden sollen. Dort finden Sie <artifactname>.lastUpdated-Dateien. Löschen Sie diese und versuchen Sie es erneut.

Möglicherweise konnten die Artefakte aufgrund von Netzwerkproblemen nicht geladen werden und werden jetzt nicht einmal geprüft.

0
Jens Schauder

Sie können den POM-Editor in Eclipse verwenden, um den Abhängigkeitsgraphen anzuzeigen. Es zeigte sich schnell, dass jaxen-1.1.3 alte Maven1-Abhängigkeiten enthält. Eclipse bietet sie sogar direkt vor Ort an. Nett.

0
Gabor