Java JPA Hibernate Maven测试-->;未知类

Java JPA Hibernate Maven测试-->;未知类,java,hibernate,maven,jpa-2.0,Java,Hibernate,Maven,Jpa 2.0,我正在尝试运行一个简单的dataImport类,它使用JPA和Hibernate 如果我运行我的类,我总是有以下错误: Exception in thread "main" java.lang.IllegalArgumentException: Unknown entity: ch.itartis.relman.entities.code.ReferenceCode at org.hibernate.ejb.AbstractEntityManagerImpl.persist(Abstra

我正在尝试运行一个简单的dataImport类,它使用JPA和Hibernate

如果我运行我的类,我总是有以下错误:

Exception in thread "main" java.lang.IllegalArgumentException: Unknown entity: ch.itartis.relman.entities.code.ReferenceCode
    at org.hibernate.ejb.AbstractEntityManagerImpl.persist(AbstractEntityManagerImpl.java:675)
    at ch.itartis.relman.service.test.dataimport.DataImport.doSave(DataImport.java:111)
    at ch.itartis.relman.service.test.dataimport.DataImport.main(DataImport.java:43)
我的类位于src/test/java/文件夹中,在src/test/resources/中有一个service-config.xml,在src/test/resources/META-INF/中也有一个persistence.xml

如果我在src/main/java/中运行该类。。。文件夹,它的工作。但是如果我想让这个类在src/test/java/中,它就不需要了

我做错了什么


非常感谢

您正在从自己的主方法运行代码,我猜这意味着它不是由maven运行的。测试中的代码不包括在maven生成的工件中,它只包括在maven测试阶段,用于运行单元测试


如果您使用的是maven,为什么不简单地创建JUnit测试,maven将作为构建过程的一部分运行,而不是自己运行。

您是从自己的主方法运行代码,我猜这意味着它不是由maven运行的。测试中的代码不包括在maven生成的工件中,它只包括在maven测试阶段,用于运行单元测试


如果您使用的是maven,为什么不简单地创建JUnit测试,maven将作为构建过程的一部分运行,而不是自己运行。

完成Robin的答案:如果您使用set To
test运行类,那么一切都会很好。

完成Robin的答案:如果您使用set To
test和一切运行类好的。

你说的“跑我的课”是什么意思?你是怎么运作的?问题可能是/src/test/java不在您的类路径上?你是怎么运作的?问题可能是/src/test/java不在类路径上。但我仍然有java.lang.IllegalArgumentException:Unknown entity:ch.itartis.relman.entities.code.ReferenceCode问题。我认为可能有问题,因为“ReferenceCode”类位于另一个项目中。如何确保hibernate从另一个项目中找到该类?好的,现在我通过maven启动的JUnit测试来运行该类。但我仍然有java.lang.IllegalArgumentException:Unknown entity:ch.itartis.relman.entities.code.ReferenceCode问题。我认为可能有问题,因为“ReferenceCode”类位于另一个项目中。如何确保我的hibernate从另一个项目中找到该类?