将java -cp与jar文件一起使用时出错

时间:2014-03-01 00:51:43

标签: java batch-file

我正在尝试使用java -cp运行一个jar文件,但它一直给我找不到或加载主类的错误。

这是我的bat文件

:: install.bat
:: run the installer jar as a windows bat file
::
@echo off

:: setup some properties
set CLASSES=.
set JAVA_OPTS=


:: build a basic classpath
set CP="%CLASSES%"

:: locate the java executable
set JAVA_EXE="%JAVA_HOME%\bin\java.exe"
IF EXIST "%JAVA_EXE%" GOTO start
set JAVA_EXE=java.exe

:start
:: show off java version info
echo -------------------------------------------------
"%JAVA_EXE%" -version
REM echo     JAVA_OPTS: %JAVA_OPTS%
REM echo     CLASSPATH: %CP%
echo -------------------------------------------------

:: start the program
%JAVA_EXE% %JAVA_OPTS% -cp %CP% -    Djava.util.logging.config.file="./enr_logging.properties" com.company.product.package.MainClass

假设我的完全限定类名是com.company.product.package.MainClass,并且jar与.bat文件位于同一文件夹中

1 个答案:

答案 0 :(得分:0)

运行带有-cp的jar需要类路径列出jar,例如:

java -cp "Test.jar;lib/*" my.pretty.MainClass

注意: Test.jar可以替换为*以匹配所有广告,但*.jar将不起作用。

或者,您可以使用-jar运行jar。此方法需要在jar的清单中定义类路径,并静默忽略其他类路径声明。