2014-02-22 41 views
0

嗨,我建立一個WAR文件,我的駝峯Restlet項目運行在tomcat容器上,當我生成我的項目時出現以下錯誤。我不得不使用舊版本的Apache駱駝的,所以我不能從2.10版本更新: -使用maven構建Camel Restlet項目的問題?

D:\camel-restlet-demo>mvn -e package 
[INFO] Error stacktraces are turned on. 
[INFO] Scanning for projects... 
[ERROR] The build could not read 1 project -> [Help 1] 
org.apache.maven.project.ProjectBuildingException: Some problems were encountere 
d while processing the POMs: 
[ERROR] 'dependencies.dependency.version' for org.springframework:spring-express 
ion:jar is missing. @ line 34, column 21 

     at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBu 
ilder.java:364) 
     at org.apache.maven.DefaultMaven.collectProjects(DefaultMaven.java:637) 
     at org.apache.maven.DefaultMaven.getProjectsForMavenReactor(DefaultMaven 
.java:586) 
     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:229) 
     at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:152) 
     at org.apache.maven.cli.MavenCli.execute(MavenCli.java:555) 
     at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:214) 
     at org.apache.maven.cli.MavenCli.main(MavenCli.java:158) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. 
java:39) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces 
sorImpl.java:25) 
     at java.lang.reflect.Method.invoke(Method.java:597) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Laun 
cher.java:289) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.jav 
a:229) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(La 
uncher.java:415) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java: 
356) 
[ERROR] 
[ERROR] The project org.apache.camel:crestlet-demo:2.10.0 (D:\camel-restlet-de 
mo\pom.xml) has 1 error 
[ERROR]  'dependencies.dependency.version' for org.springframework:spring-exp 
ression:jar is missing. @ line 34, column 21 
[ERROR] 
[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/ProjectBuildin 
gException 

的POM文件是:

<?xml version="1.0" encoding="UTF-8"?> 
<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/maven-v4_0_0.xsd"> 

    <modelVersion>4.0.0</modelVersion> 

    <parent> 
     <groupId>org.apache.camel</groupId> 
     <artifactId>examples</artifactId> 
     <version>2.10.0</version> 
    </parent> 

    <artifactId>crestlet-demo</artifactId> 
    <packaging>war</packaging> 
    <name>Camel :: Demo :: Restlet :: JDBC</name> 
    <description>A demo on REST API with Camel Restlet</description> 

    <repositories> 
     <repository> 
     <id>maven-restlet</id> 
     <name>Public online Restlet repository</name> 
     <url>http://maven.restlet.org</url> 
     </repository> 
    </repositories> 

    <dependencies> 
     <dependency> 
      <groupId>org.apache.camel</groupId> 
      <artifactId>camel-core</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.camel</groupId> 
      <artifactId>camel-spring</artifactId> 
     </dependency>   
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-expression</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.derby</groupId> 
      <artifactId>derby</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.camel</groupId> 
      <artifactId>camel-restlet</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.restlet.jee</groupId> 
      <artifactId>org.restlet.ext.spring</artifactId> 
      <version>${restlet-version}</version> 
     </dependency> 
     <dependency> 
      <groupId>org.slf4j</groupId> 
      <artifactId>slf4j-log4j12</artifactId> 
     </dependency> 
    </dependencies> 

</project> 

傢伙中號停留在這個非常糟糕。請幫忙

回答

0

看來examples神器破了。取出parent標記和管理依賴自己,如:

<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>crestlet-demo</artifactId> 
<packaging>war</packaging> 
<name>Camel :: Demo :: Restlet :: JDBC</name> 
<description>A demo on REST API with Camel Restlet</description> 

<properties> 
    <camel-version>2.10.0</camel-version> 
    <restlet-version>2.0.0</restlet-version> 
    <derby-version>10.10.1.1</derby-version> 
</properties> 

<repositories> 
    <repository> 
     <id>maven-restlet</id> 
     <name>Public online Restlet repository</name> 
     <url>http://maven.restlet.org</url> 
    </repository> 
</repositories> 

<dependencies> 
    <dependency> 
     <groupId>org.apache.camel</groupId> 
     <artifactId>camel-core</artifactId> 
     <version>${camel-version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.camel</groupId> 
     <artifactId>camel-spring</artifactId> 
     <version>${camel-version}</version> 
    </dependency>   
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-expression</artifactId> 
     <version>3.2.4.RELEASE</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.camel</groupId> 
     <artifactId>camel-restlet</artifactId> 
     <version>${camel-version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.restlet.jee</groupId> 
     <artifactId>org.restlet.ext.spring</artifactId> 
     <version>${restlet-version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.derby</groupId> 
     <artifactId>derby</artifactId> 
     <version>10.9.1.0</version> 
    </dependency> 
    <dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>slf4j-log4j12</artifactId> 
     <version>1.7.5</version> 
    </dependency> 
</dependencies> 

如果需要添加額外的依賴。依賴關係樹可以用mvn dependency:tree進行測試。