运行 java class 未找到

run java class not found

我尝试 运行 java 使用 .sh 文件在 ubuntu 上申请。我成功编译了所有文件,但是当我 运行 sh 文件时,它说找不到名为 PaxosAgent
的主要 class .sh 文件:

for Agentid in `seq 1 5`;
do
echo $Agentid
java -cp target/classes:../../lib/cafe.jar:target/ddspaxos.jar
paxosdds.PaxosAgent $Agentid
done

这是错误: ./run_paxosagent.sh: 16: ./run_paxosagent.sh: paxosdds.PaxosAgent: 未找到

我确认 jar 文件存在于 target/ddspaxos.jar 的正确位置以及包的名称:( 请帮忙。

不确定:

for Agentid in `seq 1 5`;
do
echo $Agentid
java -cp target/classes:../../lib/cafe.jar:target/ddspaxos.jar
cd "your/path/to/the/jar"paxosdds.PaxosAgent $Agentid
done

您已将命令拆分为多行。 shell 脚本会将每一行视为一个单独的命令。您需要将命令全部放在一行或使用 \ 表示换行符不是命令的结尾。例如

java -cp target/classes:../../lib/cafe.jar:target/ddspaxos.jar \
    paxosdds.PaxosAgent $Agentid