嘿所以我正在尝试构建和部署Java应用程序。
我的buildAndDeploy.sh文件如下:
#!/bin/bash
# CoreSystemsAccumulator build and deploy script
echo "Building and Deploying CoreSystemsAccumulator"
# Step 1 - do a git pull.
cd ..
git pull
# Step 2 - Set CLASSPATH.
export CLASSPATH=libs/*
# Step 3 - Compile all sources using javac.
find ./src -name *.java > sources_list.txt
javac -d bin -classpath "${CLASSPATH}" @sources_list.txt
rm -rf sources_list.txt
# Step 4 - Run the app.
cd /opt/repositories/CoreSystemsAccumulator/bin
java com.ra.mainn.StartAccumulator
它编译得很好,但是当它试图运行应用程序时,我收到以下错误:
Error: Could not find or load main class com.ra.mainn.StartAccumulator
现在真正奇怪的是,当我尝试在没有脚本的情况下运行应用程序时,只需进入bin目录并运行以下命令,就可以正常运行。
java com.ra.mainn.StartAccumulator
我正在使用Java 8和Fedora。
任何想法都会很棒。 感谢。
答案 0 :(得分:0)
您应该在更改目录(cd /opt/repositories/CoreSystemsAccumulator/bin
)的命令后将当前目录添加到classpath。
可以概括地说:
export CLASSPATH=.:$CLASSPATH
答案 1 :(得分:0)
看来你正在重写CLASSPATH。正确设置CLASSPATH以附加您的库。实施例
CLASSPATH=$CLASSPATH:/usr/share/java/mysql-connector-java-5.1.24-bin.jar
export CLASSPATH