【发布时间】:2020-11-03 08:08:43
【问题描述】:
我有一个在 Netbeans 7.3 中创建的 Wicket java webapplication Ant 项目。过去,该项目已迁移到 Netbeans 8.2 和 9.0。我目前使用的是 OpenJDK11。我仍然可以在Netbeans 9中构建,运行和调试项目。但是在Netbeans 10及更高版本(11.3)中,项目突然无法在Tomcat 9中运行。我搜索了原因,发现类文件被更改或在 clean and build 后第一次尝试运行或调试时删除。项目构建目录中的所有内部类和匿名类(*$.class)文件都被删除。正常的其他类文件的大小也缩小了。在 clean and build 命令之后,还会在 dist 目录中创建一个 war 文件。当我将 war 文件中的类文件恢复到 build 目录时,项目会突然运行。我正在为这种奇怪的行为寻找解决方案。在 Netbeans 9 中,所有东西都可以在同一个项目和 Ant 文件中正常工作。 Tomcat的安装和JDK也是一样的。所以我怀疑 Netbeans。
【问题讨论】:
-
我在 Ant 项目文件 build-impl.xml 的 DEBUG SECTION 中摆弄了一些东西,并删除了选项 -init-cos 来自标签 target 中的属性 depends。现在 Netbeans 开始调试,没有错误。但是我认为现在在保存时部署将不再起作用。这是 build-impl.xml 中的 -init-cos 定义:
-
我可以确定问题与 Project->Build->Compiling->Compile-on-Save 和 Project->Run 的设置有关->保存时部署设置。关闭这两个设置(以及未更改的 build-impl.xml),问题就不会发生。
标签: java class tomcat netbeans