我正在尝试使用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文件位于同一文件夹中
答案 0 :(得分:0)
运行带有-cp
的jar需要类路径列出jar,例如:
java -cp "Test.jar;lib/*" my.pretty.MainClass
注意: Test.jar
可以替换为*
以匹配所有广告,但*.jar
将不起作用。
或者,您可以使用-jar
运行jar。此方法需要在jar的清单中定义类路径,并静默忽略其他类路径声明。