gpt4 book ai didi

grails.project.war.file 没有使用正确的文件名创建 war ,似乎正在缓存以前的名称?

转载 作者:行者123 更新时间:2023-12-04 20:44:34 25 4
gpt4 key购买 nike

我在从 Groovy/Grails Tool Suite 构建我的 Grails 2.2.3 项目时遇到问题。 war 文件名是动态的,并不总是正确设置。第一次构建没问题,但任何后续构建都将使用以前的文件名。

我几乎使用了@Burt Beckwith 在 Grails war filename based on environment 中确定的技术创建包括环境和日期/时间的 war 。所以输出 war 应该类似于 myapp-1.3-TEST-2013_12_02-11_31.war 或 myapp-1.3-PRODUCTION-2013_12_02-12_00.war

BuildConfig.groovy 如下:

grails.project.war.file = "target/${appName}-${appVersion}-${grails.util.Environment.current}-${new Date().format('yyyy_MM_dd-HH_mm')}.war"

如果我从命令行构建,则不存在此问题。我使用的是 Groovy/Grails Tool Suite 版本 3.3.0.Release,构建 ID 为 201307091644。Java 版本是 1.6。我在 Windows 7 64 位机器上。

我第一次运行“ test war ”时正确生成/输出以下内容:
Loading Grails 2.2.3
| Configuring classpath.
| Environment set to test.....
| Packaging Grails application..
| Compiling 179 source files
Note: C:\Users\me\.grails\2.2.3\projects\myapp\plugins\cache-1.0.0\src\java\grails\plugin\cache\web\GenericResponseWrapper.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
| Compiling 179 source files..
| Compiling 31 source files.....
| Compiling 66 GSP files for package [myapp]..
| Compiling 4 GSP files for package [mail]..
| Building WAR file.....
| Done creating WAR target\myapp-1.3-TEST-2013_12_02-11_31.war

我第二次运行“ prod war ”以下错误生成/输出:
Loading Grails 2.2.3
| Environment set to production.....
| Packaging Grails application.....
| Compiling 66 GSP files for package [myapp]..
| Compiling 4 GSP files for package [mail]..
| Building WAR file.....
| Done creating WAR target\myapp-1.3-TEST-2013_12_02-11_31.war

环境和日期/时间不正确!一场新的 war 取代了前一场,但与先前的环境和先前的日期不同!检查 war 显示生成了生产 war (尽管文件名不同)。具体来说,我检查了 web.xml 并观察到显示名称的值为/myapp-production-1.3。

如前所述,通过命令行未观察到此问题:
C:\data\GGTSWorkspace\myapp>grails prod war
| Done creating WAR target\myapp-1.3-production-2013_12_02-10_36.war

C:\data\GGTSWorkspace\myapp>grails test war
| Done creating WAR target\myapp-1.3-test-2013_12_02-10_41.war

我还创建了一个新的虚拟项目,并在这个新的虚拟项目中也观察到了这个问题,所以我目前认为这是一个 GGTS 问题/设置。

有没有人知道要解决此问题的配置更改?

更新 #1:我还能够在 Windows 上使用最新的 GGTS (3.4.0) 重现此问题,并且一位同事已能够在 Mac 上重现此问题。

更新 #2:我发现使用 GGTS 3.1.0(基于 Eclipse 4.2)时不存在此问题。该问题至少存在于 GGTS 3.3.0(基于 Eclipse 4.3)及更高版本。

提前致谢!

最佳答案

我相信当设置“Groovy > Grails > Keep external Grails Running”被选中时会发生这种情况。此外,似乎是一个错误,但取消选中它为我解决了这个问题。

关于grails.project.war.file 没有使用正确的文件名创建 war ,似乎正在缓存以前的名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20335820/

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