【发布时间】:2018-09-10 04:41:42
【问题描述】:
当我尝试运行我的 WAR 文件时,我会得到这个:
$ java -Dgrails.env=prod -jar build/libs/MyWar-0.45.war
Error: Could not find or load main class build.libs.MyWar-0.45.war
有这些版本:
grailsVersion=3.3.3
gormVersion=6.1.6.RELEASE
gradleWrapperVersion=3.5
jdk1.8.0_161
它适用于 grails 3.3.0。 有什么想法吗?
【问题讨论】:
-
尝试
cd build/libs然后从那里运行 jar,而不是源项目的基础。 -
通常我的方式,正如我在上面尝试的那样,但现在我在新磁盘上安装了 Windows 并从旧磁盘复制项目并从 grails-3.3.0 升级到 grails -3.3.3也不是你描述的方式。我可能需要更改我的项目中的某些内容,但我不知道是什么。
-
你试过干净吗?您是否也将缓存和存储库复制到您的主目录?例如.m2 .gradle 和 .grails,并不是说你应该这样做,但项目可能期望有一些东西存在并且没有它可能无法运行,有时最好从头开始并从新机器上的版本控制中检查项目,项目也运行从 or 命令行使用 run-app?
-
您是否忘记在命令中包含
-jar? -
好吧,我现在可以看到我在我的问题中忘记了它。我不知道我怎么会错过它,因为我在运行它时就拥有它。但是当我在 PowerShell 中运行时它没有帮助。但是在 PS 中运行时从命令行中删除“-Dgrails.env=prod”会有所帮助,但在经典命令窗口中运行时我可以保留完整的命令。