我正在尝试获取我的应用程序类路径.
我有一个jar(名为application.jar),它在Manifest.mf中有其他jar文件,比如Class-Path: a.jar b.jar.
为什么当我使用System.getProperty("java.class.path")我的罐子a.jar和b.jar没有列出?
我在Eclipse中创建了一个项目并成功执行它(这是一个普通的项目,没有Maven或Beans,非常简单),我用项目创建了一个.jar并尝试执行它,但它抛出了以下错误:
C:\Documents\wrapper-windows-x86-64-3.5.19-st\bin>java -cp QuoteHandler.jar stoc
k.view.Main
Initial SessionFactory creation failed.java.lang.NoClassDefFoundError: org/hiber
nate/cfg/Configuration
Exception in thread "Quotes" java.lang.ExceptionInInitializerError
at stock.controller.HollidayController.<clinit>(HollidayController.java:
25)
at stock.view.MainThread.run(MainThread.java:57)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NoClassDefFoundError: org/hibernate/cfg/Configuration
at stock.controller.HollidayController.<clinit>(HollidayController.java:
22)
... 2 more
Caused by: java.lang.ClassNotFoundException: org.hibernate.cfg.Configuration
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 3 more
Run Code Online (Sandbox Code Playgroud)
该项目的.classpath文件具有:
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jre7"/>
<classpathentry kind="lib" path="lib/antlr-2.7.7.jar"/>
<classpathentry …Run Code Online (Sandbox Code Playgroud) 环境:Windows 7,Java 6.
尝试使用-cp选项编译.java文件.该文件使用当前目录中的单个jar文件ALONG与当前目录中的其他一些jar文件.
javac -cp ./*.jar MyFile.java
Run Code Online (Sandbox Code Playgroud)
不起作用.
javac -cp ./* MyFile.java
Run Code Online (Sandbox Code Playgroud)
不起作用
javac -cp ./MyJar.jar MyFile.java
Run Code Online (Sandbox Code Playgroud)
作品
前两种情况,我得到一个无效的标志错误.有人可以解释这种行为吗?
我检查是否是空格问题,我的完整文件路径中没有任何空格.
从命令行运行java时:
java -classpath bin:pellet-2.0.0/lib/* com.stuff.MyClass argumentTextStuff
我收到以下回复:
java: No match.
Run Code Online (Sandbox Code Playgroud)
这是什么意思? which java指向预期的文件.如果我取出星号,那么我得到预期的类未找到错误.谷歌搜索并不富有成效,因为我一直在寻找匹配正则表达式模式的东西.
我正在运行Ubuntu并希望通过包含多个jar文件从终端执行Java文件.
我的所有罐子都包含在tha jar文件夹中.
我试过了
javac -cp jar/A.jar: jar/B.jar: jar/C.jar: jar/D.jar MyFile.java
Run Code Online (Sandbox Code Playgroud)
我得到以下错误.
javac: invalid flag: jar/B.jar:
Usage: javac <options> <source files>
use -help for a list of possible option
Run Code Online (Sandbox Code Playgroud)
任何人都可以指导如何在类路径中使用多个jar?
在Hudson服务器(Windows机器)上部署我的应用程序时,我在调用java.exe时遇到问题,因为我的类路径太长 - Windows在一定长度后才会弹出.
该classpath基本上是数百个Jar文件,用分号隔开
假设如果在类路径中显式列出了每个jar,则以下类路径会太大:
<path id="classpath.project">
<fileset dir="lib" includes="**/*.jar" />
</path>
Run Code Online (Sandbox Code Playgroud)
我可以在蚂蚁中做些什么来缩短我的课程路径?
这可能确实是一个非常简单的问题,但我对Java完全不熟悉,也没有得到如何解决它.
我有一个stdlib.jar文件,其中有一些类定义为StdRandom,我必须在我的程序中使用它们.我读过,要使用像stdlib.jar这样的文件我必须使用默认包.所以我从下面的程序中删除了"package algs4".但它没有用.
package algs4;
public class PercolationStats
{
//Some method declarations
public static void main(String[] args)
{
//Some code
for(int counter=0; counter<T; counter++)
{
while(!p.percolates())
{
iIndex = StdRandom.uniform(N);
jIndex = StdRandom.uniform(N);
...
}
}
}
Run Code Online (Sandbox Code Playgroud)
每次我编译这个程序使用:
javac -cp . algs4/PercolationStats.java
Run Code Online (Sandbox Code Playgroud)
我收到错误:
algs4/PercolationStats.java:30: cannot find symbol
symbol : variable StdRandom
location: class algs4.PercolationStats
iIndex = StdRandom.uniform(N);
Run Code Online (Sandbox Code Playgroud)
我也尝试使用以下方法编译:
javac -cp .:stdlib.jar algs4/PercolationStats.java
Run Code Online (Sandbox Code Playgroud)
但错误仍然相同.
虽然这不是一个好习惯,但我也从.jar文件中提取了文件,它给了我StdRandom.java文件,但它仍然不起作用.
包括stdlib.jar在内的所有文件都在同一目录中.
我该怎么办呢?
编辑:只是为了使任何未来的引用更详细的问题:程序中使用的stdlib.jar是在"默认"包中.
我正在尝试使用Apache Commons中名为 StringUtils 的功能。但是,这需要您下载库并添加它,以便我可以使用该代码import org.apache.commons.lang3.StringUtils;。我的问题是我不确定将其添加到哪里,以便我可以在命令提示符下编译我的程序。我也不知道应该将哪些文件添加到所需的文件夹中。
任何帮助将不胜感激。
我有问题从jar运行主类.
Ant脚本生成了以下文件夹:
MyProject(Somewhere in C:)
|
|
|____configuration(this contains properties/XML file)
|
|____dist(contains MyProject.jar)
|
|____lib(contains all other jars)
|
|____run(contains batch file to run MyProject.jar)
Run Code Online (Sandbox Code Playgroud)
在内部运行文件夹中,我有一个批处理文件,其内容如下:
java -jar ../dist/MyProject.jar;../lib/*.jar com.my.test.MainTest
Run Code Online (Sandbox Code Playgroud)
有人可以指导我.我只想去运行文件夹并双击.bat文件并运行应用程序.
我正进入(状态
Exception in thread "main" java.lang.NoClassDefFoundError: MyProject/jar
Run Code Online (Sandbox Code Playgroud)
更新
新的错误是:
The java class is not found: com.microsoft.sqlserver.jdbc.SQLServerException
Run Code Online (Sandbox Code Playgroud)
谢谢...
我正在开发一个程序,因为它想要使用多个jar(例如servlet.jar和mysql.jar)我知道如何使用Eclipse IDE导入它们.但不是在cmd提示符下.任何人都可以提前帮助我...