[英]Multi module maven project dependency issue with jpa
I'm getting an error with a multi-module maven project. 我在多模块Maven项目中遇到错误。 I attempt to run "maven install" via eclipse run as option. 我尝试通过eclipse作为选项运行“ Maven安装”。
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building mysite-entities 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-resources-plugin:2.5:resources (default-resources) @ mysite-entities ---
[debug] execute contextualize
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /home/thomas/spring/mysite-parent/mysite-entities/src/main/resources
[INFO]
[INFO] --- maven-compiler-plugin:2.3.2:compile (default-compile) @ mysite-entities ---
[INFO] Compiling 11 source files to /home/thomas/spring/mysite-parent/mysite-entities/target/classes
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] /home/thomas/spring/mysite-parent/mysite-entities/src/main/java/com/mysite/entities/Mcc.java:[5,24] package javax.persistence does not exist
[ERROR] /home/thomas/spring/mysite-parent/mysite-entities/src/main/java/com/mysite/entities/Mcc.java:[6,24] package javax.persistence does not exist
[ERROR] /home/thomas/spring/mysite-parent/mysite-entities/src/main/java/com/mysite/entities/Mcc.java:[8,1] cannot find symbol
symbol: class Entity
@Entity
Mcc.java: Mcc.java:
package com.mysite.entities;
import java.io.Serializable;
import javax.persistence.Entity;
import javax.persistence.Id;
@Entity
public class Mcc implements Serializable
{
/**
*
*/
private static final long serialVersionUID = 4146710247449711520L;
@Id
private Long id;
private String name;
public Long getId()
{
return id;
}
public void setId(Long id)
{
this.id = id;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
}
My pom.xml includes: 我的pom.xml包括:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
</dependency>
I've checked the maven dependencies that are pulled in and they include hibernate-jpa-2.0-api-1.0.1.Final.jar which in turns includes all the necessary classes. 我已经检查了引入的Maven依赖项,它们包括hibernate-jpa-2.0-api-1.0.1.Final.jar,而后者又包含所有必需的类。
Why am I getting this maven error? 为什么会出现此Maven错误?
There actually is a dependency for javax.persistence
. 实际上存在javax.persistence
的依赖项。 This goes along with the JPA implementation (Hibernate in your case). 这与JPA实现(在您的情况下为Hibernate)一起进行。
Add this to your pom.xml
将此添加到您的pom.xml
<dependency>
<groupId>javax.persistence</groupId>
<artifactId>persistence-api</artifactId>
<version>1.0</version>
<optional>true</optional>
</dependency>
Found this post somewhere and found this get rid of the warning messages. 在某处找到该帖子,发现它摆脱了警告消息。
Copy slf4j-api-VERSION.jar
and logback-classic-VERSION.jar
to %JAVA_HOME%\\jre\\lib\\ext
将slf4j-api-VERSION.jar
和logback-classic-VERSION.jar
复制到%JAVA_HOME%\\jre\\lib\\ext
slf4j-api-VERSION.jar
is located in %M2_REPOSITORY%\\org\\slf4j\\slf4j-api\\VERSION\\
slf4j-api-VERSION.jar
位于%M2_REPOSITORY%\\org\\slf4j\\slf4j-api\\VERSION\\
logback-classic-VERSION.jar
is located in %M2_REPOSITORY%\\ch\\qos\\logback\\logback-classic\\VERSION\\
logback-classic-VERSION.jar
位于%M2_REPOSITORY%\\ch\\qos\\logback\\logback-classic\\VERSION\\
If not using logback-classic, then At least slf4j-log4j12
, slf4j-simple
, slf4j-jdk14
or logback-classic
binding must be in rhw classpath. 如果不使用logback-classic,则至少slf4j-log4j12
, slf4j-simple
, slf4j-jdk14
或logback-classic
绑定必须位于rhw classpath中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.