2012-05-28 20 views
12

我剛開始使用m2e來嘗試構建示例travellog彈性beanstalk項目。在控制檯上,我收到「[錯誤]項目讀取錯誤」。m2e給出了不可思議的「項目讀取錯誤」

這也在「依賴關係層次」選項卡上顯示爲紅色。

這是什麼意思,我怎麼找出更多的細節?

編輯:添加的pom.xml

<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> 
    <groupId>BeanstalkTest</groupId> 
    <artifactId>BeanstalkTest</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <packaging>war</packaging> 

    <dependencies> 
     <dependency> 
      <groupId>com.amazonaws</groupId> 
      <artifactId>aws-java-sdk</artifactId> 
      <version>[1.0.007,)</version> 
     </dependency> 
    </dependencies> 

</project> 
+0

你可以給我們一個鏈接來訪問項目pom嗎? (或可能的話粘貼)。我希望儘管你可以在命令行中沒有問題的構建,對吧? –

+0

@LucaGeretti謝謝,我編輯了這個問題並添加了pom.xml,實際上我沒有試圖從命令行構建它。將安裝maven(在Windows上,呃!)並嘗試它。 – user1420538

回答

20

確定。所以我想我明白了。

在工作區\ .metadata中有日誌文件,例如, .LOG該礦擁有此項:

!ENTRY org.eclipse.m2e.logback.appender 4 0 2012-05-28 18:50:44.641 
!MESSAGE Project read error 

你可以查看:

工作區\ .metadata位於\ .plugins \ org.eclipse.m2e.logback.configuration

找到日誌文件m2e,例如0.log

這些都非常詳細和有用。無論如何,我的日誌文件中有以下條目:

2012-05-28 18:50:44,640 [Worker-52] ERROR o.e.m.editor.pom.DependencyTreePage - Project read error 
org.eclipse.core.runtime.CoreException: Project read error 
    at org.eclipse.m2e.core.embedder.MavenModelManager.readDependencyTree(MavenModelManager.java:230) ~[na:na] 
    at org.eclipse.m2e.editor.pom.MavenPomEditor.readDependencyTree(MavenPomEditor.java:701) ~[na:na] 
    at org.eclipse.m2e.editor.pom.DependencyTreePage$1.run(DependencyTreePage.java:215) ~[na:na] 
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) [org.eclipse.core.jobs_3.5.101.v20120113-1953.jar:na] 
Caused by: org.sonatype.aether.collection.DependencyCollectionException: Failed to collect dependencies for [com.amazonaws:aws-java-sdk:jar:[1.0.007,) (compile)] 
    at org.sonatype.aether.impl.internal.DefaultDependencyCollector.collectDependencies(DefaultDependencyCollector.java:262) ~[na:na] 
    at org.sonatype.aether.impl.internal.DefaultRepositorySystem.collectDependencies(DefaultRepositorySystem.java:345) ~[na:na] 
    at org.eclipse.m2e.core.embedder.MavenModelManager.readDependencyTree(MavenModelManager.java:226) ~[na:na] 
    ... 3 common frames omitted 
Caused by: org.sonatype.aether.resolution.VersionRangeResolutionException: Failed to resolve version range for org.codehaus.jackson:jackson-mapper-asl:jar:[1.8.): Invalid version range [1.8.), single version must be surrounded by [] 
    at org.apache.maven.repository.internal.DefaultVersionRangeResolver.resolveVersionRange(DefaultVersionRangeResolver.java:114) ~[na:na] 
    at org.sonatype.aether.impl.internal.DefaultDependencyCollector.process(DefaultDependencyCollector.java:378) ~[na:na] 
    at org.sonatype.aether.impl.internal.DefaultDependencyCollector.process(DefaultDependencyCollector.java:533) ~[na:na] 
    at org.sonatype.aether.impl.internal.DefaultDependencyCollector.collectDependencies(DefaultDependencyCollector.java:243) ~[na:na] 
    ... 5 common frames omitted 
Caused by: org.sonatype.aether.version.InvalidVersionSpecificationException: Invalid version range [1.8.), single version must be surrounded by [] 
    at org.sonatype.aether.util.version.GenericVersionRange.<init>(GenericVersionRange.java:84) ~[na:na] 
    at org.sonatype.aether.util.version.GenericVersionScheme.parseVersionRange(GenericVersionScheme.java:40) ~[na:na] 
    at org.sonatype.aether.util.version.GenericVersionScheme.parseVersionConstraint(GenericVersionScheme.java:66) ~[na:na] 
    at org.apache.maven.repository.internal.DefaultVersionRangeResolver.resolveVersionRange(DefaultVersionRangeResolver.java:109) ~[na:na] 
    ... 8 common frames omitted 

因此,似乎有與定義爲AWS-Java的SDK的依賴問題。它指定jackson-mapper-asl可以是版本[1.8。),這似乎是無效的語法。

如果我修改的pom.xml排除依賴它變成:

<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> 
    <groupId>BeanstalkTest</groupId> 
    <artifactId>BeanstalkTest</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <packaging>war</packaging> 

    <dependencies> 
     <dependency> 
      <groupId>com.amazonaws</groupId> 
      <artifactId>aws-java-sdk</artifactId> 
      <version>[1.0.007,)</version> 
      <exclusions> 
       <exclusion> 
        <groupId>org.codehaus.jackson</groupId> 
        <artifactId>jackson-mapper-asl</artifactId> 
       </exclusion> 
      </exclusions> 
     </dependency> 
    </dependencies> 

</project> 

,這不會產生「項目讀取錯誤」。所以,基本上兩件事情:

  1. 日誌文件如上發現,和
  2. 似乎是在AWS-Java的SDK依賴

由於盧卡的定義問題。

+0

嗯,它似乎陷入了「不是你的錯」類別。我會嘗試一些不同版本的aws-java-sdk。正如你可以看到[這裏](http://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk),從1.0.007開始它們已經走了很長的路,所以也許更新的版本仍然兼容您的項目並修復依賴性問題。另外或替代地,儘量不要使用版本範圍。 –

+0

@LucaGeretti啊,我應該考慮更新那個版本。但是我相信,無論如何,它都是最新版本,因爲版本是如何指定的[1.0.007,)。我會玩。再次感謝。 – user1420538