我是Java的新手,我不确定如何从单独的程序jar访问位于特定目录中的类文件.
例如,我有一个位于/的第三方jar文件,它应该加载位于/mylib/MyClass.class中的MyClass,所以我尝试运行:
java -jar mainprog.jar -classpath "/mylib" MyClass
Run Code Online (Sandbox Code Playgroud)
但是我收到了错误:
Exception in thread "main" java.lang.NoClassDefFoundError: MyClass
Caused by: java.lang.ClassNotFoundException: MyClass
at java.net.URLClassLoader$1.run(URLClassLoader.java:221)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:209)
at java.lang.ClassLoader.loadClass(ClassLoader.java:324)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:269)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:337)
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
当将项目导出为jar时,Eclipse是否有办法输出我想在Manifest中的ClassPath变量上定义的所有Jars?我希望能够点击我需要我的项目依赖的所有jar,然后让Eclipse输出它们:
ClassPath: . /lib/somejar.jar /lib/otherjar.jar
Run Code Online (Sandbox Code Playgroud)
谢谢
我正在尝试让我的Apache Lucene演示工作,我将在本教程中设置类路径http://lucene.apache.org/java/2_3_2/demo.html
我已经在网上搜索了这两个我发现设置CLASSPATH的解决方案:
CLASSPATH=${CLASSPATH}:/Users/philhunter/Desktop/COM562\ Project/lucene-3.0.3/lucene-core-3.0.3.jar
Run Code Online (Sandbox Code Playgroud)
和
setenv CLASSPATH ${CLASSPATH}:/Users/philhunter/Desktop/COM562\ Project/lucene-3.0.3/lucene-core-3.0.3.jar
Run Code Online (Sandbox Code Playgroud)
第二个出现错误-bash:setenv:command not found
第一个似乎接受了确定,但是我尝试了教程的下一步,我收到了一个错误.下一步是运行以下内容:
Phil-hunters-MacBook:webapps philhunter$ java org.apache.lucene.demo.IndexFiles /Users/philhunter/Desktop/COM562\ Project/lucene-3.0.3/src
Run Code Online (Sandbox Code Playgroud)
这给了我错误:
线程"main"中的异常java.lang.NoClassDefFoundError:org/apache/lucene/demo/IndexFiles
这让我相信我的CLASSPATHS没有正确设置.假设这个我是对的吗?我已经尝试过其他教程和演示,并且看到了相同的错误.我是Lucene的新手,也是mac和Unix shell脚本的新手.任何人都知道我是否正确设置CLASSPATH,如果这是错误的原因?
我在我的web.xml中有这个:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring-config.xml</param-value>
</context-param>
Run Code Online (Sandbox Code Playgroud)
我怀疑这是一个仅由Spring使用的约定?如果是,我的应用程序是否需要更长时间才能加载,因为我没有指定直接文件位置,但现在它必须搜索整个类路径?
我在windows-64bit操作系统上安装了java.但是当我执行javac时,它失败了
错误消息没有这样的命令可用".我创建了以下环境变量
CLASSPATH C:\ Program Files(x86)\ Java\jdk1.6.0_05\lib
我有一个简单的java程序,socket,AWT和jUnit依赖项.
我已经在eclipse中构建它,当我从eclipse运行/调试它时,它可以工作.
当我从命令行启动它时,我得到一个错误说
Exception in thread "main" java.lang.NoClassDefFoundError
Run Code Online (Sandbox Code Playgroud)
我猜它是由于没有在类路径中找到所需的依赖项之一.
鉴于从eclipse启动工作,有没有办法确定eclipse用于启动同一程序的命令行?
我试图使用scala从classpath读取属性文件.但它看起来不起作用,它与java不同.以下2个代码片段,一个是java(工作),另一个是scala(不工作).我不明白有什么区别.
// working
BufferedReader reader = new BufferedReader(new InputStreamReader(
Test.class.getResourceAsStream("conf/fp.properties")));
// not working
val reader = new BufferedReader(new InputStreamReader(
getClass.getResourceAsStream("conf/fp.properties")));
Exception in thread "main" java.lang.NullPointerException
at java.io.Reader.<init>(Reader.java:78)
at java.io.InputStreamReader.<init>(InputStreamReader.java:72)
at com.ebay.searchscience.searchmetrics.fp.conf.FPConf$.main(FPConf.scala:31)
at com.ebay.searchscience.searchmetrics.fp.conf.FPConf.main(FPConf.scala)
Run Code Online (Sandbox Code Playgroud) 我收到
java.lang.NoClassDefFoundError: org/apache/commons/digester/Digester错误,我被困这个错误超过一个月.我已经尝试了所有Digester版本,我还在classpath中检查了重复的JAR.
我已经设计了报告,iReport-5.6.0并且使用了来自
iReport-5.6.0\ireport\modules\ext其他所需JAR的JAR.
错误日志:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/digester/Digester
at net.sf.jasperreports.engine.JasperCompileManager.compileReportToFile(JasperCompileManager.java:108)
at net.sf.dynamicreports.examples.JasperMongoDBConnection.main(JasperMongoDBConnection.java:30)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.digester.Digester
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at sun.misc.Launcher$ExtClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 2 more
Run Code Online (Sandbox Code Playgroud) 我已经安装了Kafka以及zookeeper.Zookeeper工作正常.但是,当我尝试运行Kafka服务器时,我得到以下错误.请帮我解决这个问题.先感谢您!!!
命令从C:\ kafka-0.9.0.1运行:
.\bin\windows\kafka-server-start.bat .\config\server.properties
Run Code Online (Sandbox Code Playgroud)
错误消息:
Classpath为空.请首先构建项目,例如运行'gradlew jarAll'
我正在使用教程创建留言簿Web应用程序,每当我尝试连接到localhost:8080时,我收到以下错误:
HTTP ERROR 500
Problem accessing /. Reason:
Unable to compile class for JSP:
An error occurred at line: 1 in the generated java file
The type java.io.ObjectInputStream cannot be resolved. It is indirectly referenced from required .class files
Stacktrace:
Caused by:
org.apache.jasper.JasperException: Unable to compile class for JSP:
An error occurred at line: 1 in the generated java file
The type java.io.ObjectInputStream cannot be resolved. It is indirectly referenced from required .class files
Stacktrace:
at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)
at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
at …Run Code Online (Sandbox Code Playgroud)