[英]java.lang.ClassNotFoundException Error in Maven Project
[英]java.lang.ClassNotFoundException maven
在Maven项目(Intellij Idea)中,我有java.lang.ClassNotFoundException
因为我试图创建需要一些外部库的类的对象。
public HelloWorldController() {
service = new FileService();
products.add(new Product("hello"));
products.add(new Product("world"));
}
没有service = new FileService();
一切都能完美service = new FileService();
,这是FileService类:
public class FileService {
public FileService()
{
irodsAccount = new IRODSAccount("192.168.6.128",1247,"rods","rods","","tempZone","demoResc");
try {
irodsFileSystem = new IRODSFileSystem();
}
catch (JargonException ex) {
}
try {
this.dataTransferOps = irodsFileSystem.getIRODSAccessObjectFactory().getDataTransferOperations(irodsAccount);
}
catch (JargonException ex) {
}
}
private String targetIrodsFileAbsolutePath;
private IRODSAccount irodsAccount;
private IRODSFileSystem irodsFileSystem;
private TransferControlBlock transferControlBlock;
private DataTransferOperations dataTransferOps = null;
public IRODSFile getIRODSFileForPath(String irodsFilePath) throws Exception {
if (irodsFilePath == null || irodsFilePath.isEmpty()) {
throw new Exception("null or empty irodsFilePath");
}
return irodsFileSystem.getIRODSFileFactory(irodsAccount).instanceIRODSFile(irodsFilePath);
}
}
IRODSAccount
, IRODSFileSystem
和其他类似的类是从我连接到项目(添加的模块)的外部jar中获得的,但是在运行我的项目后,我会得到以下内容:
Caused by: java.lang.ClassNotFoundException: org.irods.jargon.core.exception.JargonException
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50)
at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass(ClassRealm.java:259)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:235)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:227)
at org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:401)
at org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:363)
... 62 more
不能在具有相同jar的maven项目中正常工作(我没有得到java.lang.ClassNotFoundException
)。 向pom.xml
文件添加依赖项并不能解决我的问题,我从以前的项目中复制了此代码:
<dependency>
<groupId>org.irods.jargon</groupId>
<artifactId>jargon-httpstream</artifactId>
<version>${jargon.version}</version>
</dependency>
但是,不幸的是,在车道<version>${jargon.version}</version>
jargon.version无法识别为正确的语句。
<version>${jargon.version}</version>
在中添加正确的版本
<properties>
<jargon.version>2.4.1-SNAPSHOT<jargon.version>
</properties>
在您的pom文件中或直接
<version>2.4.1-SNAPSHOT</version>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.