【问题标题】:Strange behaviour of Ant java webapplication in Netbeans 10 and laterNetbeans 10 及更高版本中 Ant java Web 应用程序的奇怪行为
【发布时间】: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.xmlDEBUG SECTION 中摆弄了一些东西,并删除了选项 -init-cos 来自标签 target 中的属性 depends。现在 Netbeans 开始调试,没有错误。但是我认为现在在保存时部署将不再起作用。这是 build-impl.xml 中的 -init-cos 定义:
  • 我可以确定问题与 Project->Build->Compiling->Compile-on-SaveProject->Run 的设置有关->保存时部署设置。关闭这两个设置(以及未更改的 build-impl.xml),问题就不会发生。

标签: java class tomcat netbeans


【解决方案1】:

问题是由源第三方库中缺少插件nb-javac Java 编辑支持库版本2.0引起的。这是一个经过修改/修补的 javac,可以很好地集成以促进 Compile on SaveDeply on Save。关于这个插件(旧版本)的更多信息可以在这里找到:What's "nb-javac" in Apache NetBeans?。 您可以通过 MainMenu=>Tools=>Plugins

安装插件

【讨论】:

    猜你喜欢
    • 2015-03-04
    • 1970-01-01
    • 1970-01-01
    • 2019-01-13
    • 1970-01-01
    • 2016-11-02
    • 1970-01-01
    • 2018-04-04
    • 2021-11-17
    相关资源
    最近更新 更多