gpt4 book ai didi

java - 在 while 循环 shell 中运行 Java

转载 作者:行者123 更新时间:2023-12-01 19:06:37 25 4
gpt4 key购买 nike

for /f "tokens=* delims= " %%a in (plugins.txt) do (
echo %%a
java -cp .;svnkit.jar Test %%a

cd %dotcms_home%

call ant deploy-plugins > test1.txt

FindStr "BUILD SUCCESSFUL" test1.txt

del "test1.txt"

cd C:\dotCMSResults
echo Errorlevel: %ERRORLEVEL%
if %ERRORLEVEL% ==1 (echo ^<tr BGCOLOR=\"#FF0000\"^>^<td^>Build^</td^>^<td^>Fout\!^</td^>^</tr^> >> goedje.html ) else (echo ^<tr BGCOLOR=\"#00FF00\"^>^<td^>Build^</td^>^<td^>Gelukt\!^</td^>^</tr^> >> goedje.html)
cd %dotcms_home%
call ant undeploy-plugins > test.txt
)

您好,我想在 while 循环中在命令行中运行 Java 类。我在谷歌上搜索并找到了一种方法。但现在他只做了第一次,第二次、第三次他说:

Exception in thread "main" java.lang.NoClassDefFoundError: Test
Caused by: java.lang.ClassNotFoundException: Test
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)
Could not find the main class: Test. Program will exit.

我不知道为什么,特别是因为他第一次就跑对了。只有当他第二次和第三次进入循环时,他才会出现此错误。

最佳答案

这很可能是由于您的 cd 语句造成的 - 您必须从包含 svnkit.jar (或 Test.jar)的当前目录进行更改。 class?),这样它在第二个循环中就找不到测试类了。

要修复此问题,请在调用 java 之前将 cd 添加到正确的目录。

或者,使用绝对路径作为 java 类路径参数更好,即

java -cp c:/folder1;c:/folder2/svnkit.jar

关于java - 在 while 循环 shell 中运行 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9823473/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com