2010-05-21 4 views
0

Я бегу простой CxF Maven проекта http://cxf.apache.org/docs/using-cxf-with-maven.html, и получаю ошибку нижеMaven - как разместить файлы jar зависимости зависимости от сборки?

[INFO] [cxf-codegen:wsdl2java {execution: generate-sources}] 
[INFO] ------------------------------------------------------------------------ 
[ERROR] BUILD ERROR 
[INFO] ------------------------------------------------------------------------ 
[INFO] org/springframework/core/io/support/ResourcePatternResolver 

org.springframework.core.io.support.ResourcePatternResolver 
[INFO] ------------------------------------------------------------------------ 
[INFO] Trace 
org.apache.maven.lifecycle.LifecycleExecutionException: org/springframework/core/io/support/ResourcePatternResolver 
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:719) 

Я не знаю, как поставить springframework-ядро Dependance?

Я попытался ниже, как и большинство ответов

 <dependency> 
     <groupId>org.springframework</groupId> 
    <artifactId>spring-core</artifactId> 
    <version>2.5.6</version> 
    </dependency> 
</dependencies> 

, но это не помогло, я не знаю, почему это зависит от springframework

Это работает, если я положил файл банку под $ M2_HOME/lib, но верно ли это? потому что, когда я решаю это, он требует добавить больше lib там, могу ли я поместить его в pom.xml где-нибудь?

Я пытался поставить <dependencies/> внутри <build> тег, он не работает

мой Maven является 2.2.1 на окнах

+0

Элемент <зависимостями> раздел не идет внутри тега, это равный и должен быть непосредственно под , как в примере кода Паскаля. – elduff

ответ

2

Это работает, если я помещаю файл jar под $ M2_HOME/lib, но верно ли это?

Нет, определенно нет. Чтобы добавить зависимость, вам нужно объявить его в pom.xml, что-то вроде этого:

<project> 
    ... 
    <dependencies> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-core</artifactId> 
     <version>???</version> 
    </dependency> 
    ... 
    </dependencies> 
</project> 

Но я не понимаю, почему вы должны добавить эту зависимость, весна-ядро является зависимость от CXF , вы должны получить это транзитивно. Однако вы не предоставляете достаточную контекстную информацию для более точного ответа.

1

Вам нужно добавить это в файл pom.xml Maven в разделе <dependencies>:

<dependency> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-core</artifactId> 
    <version>???</version> 
    </dependency> 

Номер версии зависит от того, какую версию весны вы используете. (Я использую 2.0 в качестве версии # вместе с весной 2.0.8).

1

И, наконец, я нашел это самостоятельно, это связано с ошибкой моего пакета springframework-2.5.5 из локального хранилища. Файл jar неверен. Я замечаю это позже в eclipse

Ответ Паскаля также верен.

Springframework-2.5.5 автоматически загружается maven, к сожалению, он сломан, поэтому он по-прежнему жалуется на класс, и если я наберу весной-2.5.6 внутри, даже он будет загружен, он не будет использоваться , maven все еще думает, что он загрузил springframework-2.5.5 в свой путь класса.

И если я помещаю в% M2_HOME%/lib, то это будет путь класса maven, и использовать его неправильно.

Поскольку я раньше встречал эту проблему, теперь я знаю, что это такое.

Резюме: проверка ваших Dépendance файлов, чтобы увидеть, правильно ли пакет

BTW: Спасибо за все, особенно паскаль

Смежные вопросы