在Heroku上部署Java,无法在target \ dependency中找到主类

时间:2012-08-21 05:01:14

标签: java heroku

我尝试在Heroku上部署java。我按照Heroku上的步骤操作 ,但我得到错误

java -cp target\classes;"target\dependency\*" HelloWorld

错误是: Error: Could not find or load main class HelloWorld

我该如何解决?区分大小写吗?

我在pom.xml中找到了helloworld关键字,所以我尝试将其更改为HelloWorld。它仍然无法正常工作。顺便说一句,我用jdk1.7.0_05运行Windows 7(64位)。

2 个答案:

答案 0 :(得分:3)

看起来您使用的是Windows风格的路径-cp标志。 Heroku在Linux上运行,因此您可能需要将其更改为java -cp target/classes:"target/dependency/*" HelloWorld中正在部署到Heroku的Procfile

答案 1 :(得分:0)

对于任何尝试关注Heroku入门教程且尝试在本地部署并且收到此错误的狂热读者...

您可能没有在本地构建目标类(它们在本教程中没有很好地解释)。

如果您正在使用Maven的入门指南,请在项目根文件夹中执行以下maven命令以在本地构建目标:

mvn clean install

之后,本地部署命令如:

heroku local web -f Procfile.windows

应该按预期工作。 (如果不在Windows下部署,显然可以用Procfile.windows替换Procfile

然后您应该看到类似的内容:

Started ServerConnector@4d29c891{HTTP/1.1}{0.0.0.0:5000}

并可以通过导航到显示的端口上的localhost来本地访问您的应用程序:

localhost:5000