2010-08-23 3 views
1

Eclipse может построить этот проект, барабан зависимости находится в локальном репозитории, компилятор перечисляет банку. Я использую Eclipse Helios с интеграцией Maven для Eclipse (0.10.2);Почему компилятор maven не может разрешить класс из-за дееспособности?

И все же он терпит неудачу, потому что компилятор не может разрешить PropertiesEditor от spring-beans-2.5.6.jar.

Вот полный отчет из сборки

http://wellingtonpeoplescentre.org.nz/geek/maven-wigout.txt

и вот мой ПОМ.

<?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> 
<groupId>witerat</groupId> 
<artifactId>iWPC</artifactId> 
<packaging>war</packaging> 
<version>0.0.1-SNAPSHOT</version> 
<name>WPC on the web</name> 
<url>http://wellingtonpeoplescentre.org.nz</url> 
<organization> 
    <name>Wellington People's Centre</name> 
    <url>http://wellingtonpeoplescentre.org.nz</url> 
</organization> 


<build> 
    <defaultGoal>package</defaultGoal> 
    <finalName>iBffsdb</finalName> 
    <sourceDirectory>src/main/java</sourceDirectory> 
    <testSourceDirectory>src/test/java</testSourceDirectory> 
    <directory>target</directory> 
    <resources> 
    <resource> 
    <directory>src/main/resources</directory> 
    </resource> 
    </resources> 
    <testResources> 
    <testResource> 
    <directory>src/test/resources</directory> 
    </testResource> 
    </testResources> 
    <plugins> 
    <plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-war-plugin</artifactId> 

    <version>2.1-beta-1</version> 
    <configuration> 
    <overlays> 
    <!-- 
     <overlay>  
     <groupId>org.dojotoolkit</groupId>  
     <artifactId>dojo-war</artifactId> 
     <targetPath>javascript</targetPath> 
     </overlay> --> 
     <overlay> 
     <groupId>jcivicrm-dao</groupId> 
     <artifactId>jcivicrm-dao</artifactId> 
     <type>jar</type> 
     <targetPath>WEB-INF/classes</targetPath> 
     </overlay> 
    </overlays> 
    <warSourceDirectory>WebContent</warSourceDirectory> 
    </configuration> 
    </plugin> 
    <plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-compiler-plugin</artifactId> 
    <version>2.3.1</version> 
    <configuration> 
     <encoding>Cp1252</encoding> 


    <verbose>true</verbose>  
    <source>1.6</source> 
    <target>1.6</target> 
    </configuration> 
    </plugin> 

    </plugins> 
</build> 
<repositories> 
    <repository> 
    <id>snapshots-local</id> 
    <name>snaps</name> 
    <url>http://localhost:12120/nexus-webapp-1.7.1/content/repositories/snapshots/</url> 
    <releases> 
    <enabled>false</enabled> 
    </releases> 
    <snapshots> 
    <enabled>true</enabled> 
    <updatePolicy>always</updatePolicy> 
    <checksumPolicy>warn</checksumPolicy> 
    </snapshots> 
    </repository> 
</repositories> 
<dependencies> 
    <dependency> 
    <groupId>jcivicrm-dao</groupId> 
    <artifactId>jcivicrm-dao</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    </dependency><dependency> 
    <groupId>JCivicrm-platform</groupId> 
    <artifactId>JCivicrm-platform</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    </dependency><dependency> 
    <groupId>JCiviCRM</groupId> 
    <artifactId>JCiviCRM</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    </dependency><dependency> 
    <groupId>nz.org.wpc.user.security</groupId> 
    <artifactId>nz.org.wpc.user.security</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    </dependency><dependency> 
    <groupId>com.h2database</groupId> 
    <artifactId>h2</artifactId> 
    <version>1.1.111</version> 
    </dependency><dependency> 
    <groupId>commons-collections</groupId> 
    <artifactId>commons-collections</artifactId> 
    <version>3.2.1</version> 
    </dependency><dependency> 
    <groupId>commons-dbcp</groupId> 
    <artifactId>commons-dbcp</artifactId> 
    <version>1.2.2</version> 
    </dependency><dependency> 
    <groupId>javax.servlet</groupId> 
    <artifactId>servlet-api</artifactId> 
    <version>2.4</version> 
    <scope>provided</scope> 
    </dependency><dependency> 
    <groupId>javax</groupId> 
    <artifactId>mail</artifactId> 
    <version>1.5</version> 
    <scope>system</scope> 
    <systemPath>c:\sun\sdk\lib\mail.jar</systemPath> 
    </dependency><dependency> 
    <groupId>javax.transaction</groupId> 
    <artifactId>jta</artifactId> 
    <version>1.0.1B</version> 
    </dependency><dependency> 
    <groupId>junit</groupId> 
    <artifactId>junit</artifactId> 
    <version>3.8.2</version> 
    <scope>system</scope> 
    <systemPath>C:\dev\eclipse\plugins\org.junit_3.8.2.v20080602-1318\junit.jar</systemPath> 
    </dependency><dependency> 
    <groupId>net.sf.ehcache</groupId> 
    <artifactId>ehcache</artifactId> 
    <version>1.6.0</version> 
    </dependency><dependency> 
    <groupId>net.sf.json-lib</groupId> 
    <artifactId>json-lib-ext-spring</artifactId> 
    <version>1.0.2</version> 
    </dependency><dependency> 
    <groupId>org.aspectj</groupId> 
    <artifactId>aspectjrt</artifactId> 
    <version>1.5.4</version> 
    <scope>runtime</scope> 
    </dependency><dependency> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-orm</artifactId> 
    <version>2.5.6</version> 
    </dependency><dependency> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-webmvc</artifactId> 
    <version>2.5.6</version> 
    </dependency><dependency> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-context-support</artifactId> 
    <version>2.5.6</version> 
    </dependency><dependency> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-jdbc</artifactId> 
    <version>2.5.6</version> 
    </dependency><dependency> 
    <groupId>org.springframework.security</groupId> 
    <artifactId>spring-security-core</artifactId> 
    <version>2.0.4</version> 
    <exclusions> 
    <exclusion> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-aop</artifactId> 
    </exclusion><exclusion> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-support</artifactId> 
    </exclusion><exclusion> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-remoting</artifactId> 
    </exclusion> 
    </exclusions> 
    </dependency><dependency> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-aop</artifactId> 
    <version>2.5.6</version> 
    </dependency><dependency> 
    <groupId>org.springframework.security</groupId> 
    <artifactId>spring-security-acl</artifactId> 
    <version>2.0.4</version> 
    </dependency><dependency> 
    <groupId>org.springframework.security</groupId> 
    <artifactId>spring-security-core-tiger</artifactId> 
    <version>2.0.4</version> 
    </dependency><dependency> 
    <groupId>org.springframework.security</groupId> 
    <artifactId>spring-security-taglibs</artifactId> 
    <version>2.0.5.RELEASE</version> 
    </dependency><dependency> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-beans</artifactId> 
    <version>2.5.6</version> 
    <type>jar</type> 
    <scope>compile</scope> 
    </dependency><dependency> 
    <groupId>velocity</groupId> 
    <artifactId>velocity</artifactId> 
    <version>1.4</version> 
    </dependency><dependency> 
    <groupId>org.hibernate</groupId> 
    <artifactId>hibernate</artifactId> 
    <version>3.2.6.ga</version> 
    <type>jar</type> 
    <scope>compile</scope> 
    </dependency> 
</dependencies> 

<distributionManagement> 
    <repository> 
    <id>releases-local</id> 
    <name>releases</name> 
    <url>http://localhost:12120/nexus-webapp-1.7.1/content/repositories/releases/</url> 
    </repository> 
    <snapshotRepository> 
    <id>snapshot-local</id> 
    <name>snaps</name> 
    <url>http://localhost:12120/nexus-webapp-1.7.1/content/repositories/snapshots/</url> 
    </snapshotRepository> 
</distributionManagement> 
</project> 
+1

Вы уверены, что инструкция import правильная (возможно, вы ссылаетесь на какой-либо другой параметр PropertiesEditor) –

+0

Да, помните, что работа в рабочей среде eclipse работает, но пакет Run-As maven этого не делает. Жаба не проблема. – John

ответ

0

Yep, m2eclipse является старым или содержит несколько ошибок.

Здравствуйте, вы столкнулись с той же проблемой, с которой я боролся больше 20 часов. Плагин m2eclipse имеет компилятор J2SE 1.5 где-то внутри его свойств, даже если вы укажете правильный в pom.xml, он ломается довольно часто.

create your own command: 
1) right click on project 
2) Run as 
3) Run as maven build (5-th one) 
4) on configuration panel specify your goals (site/test/clean) 
5) **on JRE panel specify your JRE 1.6** 
6) save your command as e.g. "maven site JDK 6" 
7) run everything using your customs commands ("maven site JDK 6"), not built in commands. 

ЗДЕСЬ МОИ ДРУГИЕ СОВЕТЫ 1) пользователя самостоятельно специалист, а не строить в m2eclipse, вы можете переключиться на него в m2eclipse предпочтении

2) изменить расположение хранилища от глупого один C: \ Users \ current_user-m2 \ repository в D: \ хранилище или любой другой нормальный путь без ~ или любых других специальных литров

3) проверьте все в консоли с помощью своего собственного maven до паники. Например, мои команды, такие как

mvn site 
mvn install 
mvn tomcat:redeploy 

ОТЛИЧНО от консоли, но сбой изнутри затмения. Это означает, что параметры m2eclipse неверны, и вы должны установить свои собственные параметры.

4) не полагайтесь на контекстные команды (щелкните правой кнопкой мыши - запустите as-maven test/site/build) создайте свою собственную команду в меню as-maven, чтобы выбрать правильную версию JRE (1.7 в мой случай) и добавьте любые дополнительные параметры, не забудьте дать этой команде ваше имя: «maven tomcat: redeploy JDK 7» - это даст вам хорошую возможность запускать все, что вы хотите, и не сталкиваетесь с 90% проблемы и ошибки.

P.S. Я боролся maven 2 и m2eclipse более 20 часов. Надеюсь, мои советы будут полезными для кого-то.

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