首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >EclipseLink + Maven: java.lang.NoClassDefFoundError: javax/persistence/Persistence

EclipseLink + Maven: java.lang.NoClassDefFoundError: javax/persistence/Persistence
EN

Stack Overflow用户
提问于 2014-05-31 18:50:19
回答 1查看 4.3K关注 0票数 0

我的Persistence.xml如下:

代码语言:javascript
复制
<persistence-unit name="SARMPersistentUnit" transaction-type="RESOURCE_LOCAL">
    <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
    <class>edu.deakin.sarms.model.StudentAccount</class>
    <class>edu.deakin.sarms.model.LecturerAccount</class>
    <class>edu.deakin.sarms.model.Unit</class>
    <class>edu.deakin.sarms.model.Enrollment</class>
    <class>edu.deakin.sarms.model.Attendance</class>
    <properties>
        <property name="javax.persistence.jdbc.url" value="jdbc:mysql://xx.yy.ss:3306/t2"/>
        <property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver"/>
        <property name="javax.persistence.jdbc.user" value="xx"/>
        <property name="javax.persistence.jdbc.password" value="ee"/>
        <property name="eclipselink.ddl-generation" value="drop-create-tables"/>

    </properties>
</persistence-unit>

pom.xml如下:

代码语言:javascript
复制
<?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/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>

        <groupId>edu.deakin.sarms</groupId>
        <artifactId>sarms2</artifactId>
        <version>1.0-SNAPSHOT</version>

        <repositories>
            <repository>
                <id>oss.sonatype.org</id>
                <name>OSS Sonatype Staging</name>
                <url>https://oss.sonatype.org/content/groups/staging</url>
            </repository>
        </repositories>

        <dependencies>
             <dependency>
                <groupId>org.eclipse.persistence</groupId>
                <artifactId>eclipselink</artifactId>
                <version>2.5.0</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.eclipse.persistence</groupId>
                        <artifactId>commonj.sdo</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>org.eclipse.persistence</groupId>
                <artifactId>javax.persistence</artifactId>
                <version>2.1.0</version>
            </dependency>

           <dependency>
                <groupId>javax.persistence</groupId>
                <artifactId>persistence-api</artifactId>
                <version>1.0.2</version>
            </dependency>



            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>5.1.6</version>
            </dependency>


        </dependencies>

        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>2.0.2</version>
                    <configuration>
                        <source>1.5</source>
                        <target>1.5</target>
                        <encoding>UTF-8</encoding>
                        <fork>true</fork>
                        <meminitial>128M</meminitial>
                        <maxmem>512M</maxmem>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-jar-plugin</artifactId>
                    <configuration>

                        <archive>
                            <manifest>
                                <mainClass>edu.deakin.sarms.service.SarmsControl</mainClass>
                                <addClasspath>true</addClasspath>
                            </manifest>
                        </archive>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    </project>

不过,我仍然得到"java.lang.NoClassDefFoundError: javax/persistence/Persistence",在行中:

代码语言:javascript
复制
public static EntityManagerFactory entityManagerFactory = Persistence.createEntityManagerFactory("SARMPersistentUnit");

有人能告诉我我做错了什么吗?

干杯,艾莎

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-03 02:29:38

我正在做一个mvn干净安装,然后是java -jar。然后,我在注释中使用了@ajozwk所提到的命令,但我遇到了另一个问题,即persistence.xml文件位于src/main/而不是src/main/resources下。所以现在我的问题解决了!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23973721

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档