NetBeans IDE 在“清理和构建”或外部更改时发出异常编译器错误。IDE 无法识别 JPA 生成的静态元模型

2024-05-04

我已经完全厌倦了使用 NetBeans IDE 8.x(目前使用 8.0.1)几个月了 - 它看起来就像地狱(说真的)。当对项目(尤其是 Java EE Web 应用程序 - 在不同包中包含数百个 Java 类)进行一些外部更改或尝试清洁和构建项目(尤其是企业模块),项目背景扫描启动,这会异常地在几乎所有由 JPA 生成的类中传播编译时错误静态元模型 https://docs.oracle.com/javaee/7/tutorial/persistence-criteria002.htm在 EJB 模块中使用,如下所示快照 https://i.stack.imgur.com/uilLZ.png.

令人惊讶的是,如果在 IDE 中打开这些错误的类,IDE 不再显示编译时错误(由红色卷线表示) - 我不能说出原因,因为我自己也不知道。

有时,如果 IDE 重新启动,它会启动项目背景扫描如果 IDE 一次又一次重新启动至少 10 次,则可能会消除这些错误(在大多数情况下不会)!

这种情况发生的时间和原因尚不确定,但有一点是确定的——它发生的原因是JPA 生成的静态元模型。 IDE 显然不知道以下划线结尾的类(元模型的类)。这只是浪费时间——构建一个应用程序需要几个小时或几天的时间——我不得不从头开始一个一个地重新创建所有这些类好几次。


在 8.x 版本之前,这种情况不会发生。 8.0 和 8.0.1 都有相同的问题(我什至不太确定这是否是一个问题。在使用 NetBeans 8.0 时,我错误地认为以后的版本不会强加此行为)。


为了重现这个问题,

  • 应用程序必须具有 JPA 生成的静态元模型。
  • 应用程序应该(不是必须)使用类库它保存远程 EJB 的接口。

在非常小的应用程序中,这可能会发生,也可能不会发生(我自己无法很好地确认这个问题的原因,也不能对此说什么)。


有人在使用 NetBeans IDE(尤其是 8.x)时遇到此类问题吗?这使得使用此 IDE 开发应用程序几乎不可能——这只是一种挫败感? IDE 是否有一些我可能缺少的设置?我可能以错误的方式部署应用程序吗?

我只能说一件事——项目背景扫描IDE 执行不正确或者简直就是地狱。

我部署应用程序的方式(Java EE 包含一些远程 EJB(包括许多本地 EJB),它们由类库)

  • 清理并构建类库
  • 清理并构建企业应用程序(IDE 用三角形表示的 EJB 模块)(这一步是罪魁祸首)
  • 再次清理并构建类库(完成上述两步后)
  • 部署应用程序

这些步骤是在第一次构建应用程序或对应用程序进行一些重大更改时执行的。否则,只需最后两个步骤就足以将应用程序部署到服务器(我通常这样做)。

有了这个问题,几乎无法继续下去。有没有(至少是暂时的)解决方案/解决方法?

One additional thing. This not only happens in Java EE applications but I have another project that uses Spring in which this problem often happens.


EDIT :

有时(同样不确定何时会发生),主要选项包括清洁和构建类库的子菜单被禁用,阻止我们执行清洁和构建如下所示快照 https://i.stack.imgur.com/o4ILx.png(右键单击类库打开子菜单)。

当 IDE 重新启动随机次数(1 次、2 次、5 次、10 次甚至更多次。完全不确定重新启动 IDE 多少次可以使子菜单中的这些选项启用)时,会启用哪些选项。


EDIT 2 :

该应用程序使用以下主要组件。

  • JSF 2.2.8-02
  • PrimeFaces 5.1(社区版本)
  • PrimeFaces 扩展 2.1.0(社区版本)
  • OmniFaces 1.8.1
  • 具有 JPA 2.1 的 EclipseLink 2.5.2(以及 EclipseLink JPA ModelGen)
  • Java EE 7
  • GlassFish 服务器 4.1
  • NetBeans IDE 8.0.1
  • JDK 8u25

当您在“项目”选项卡中的类上看到不正确的错误指示符时,请尝试以下操作:从菜单中选择“源”->“扫描外部更改”。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NetBeans IDE 在“清理和构建”或外部更改时发出异常编译器错误。IDE 无法识别 JPA 生成的静态元模型 的相关文章

  • 单元测试时静态元模型属性为 null

    我在外部包中有 Entity 类 这些类也有静态元模型 在我的应用程序的服务类中 我使用这些元模型和 EntityManager CriteriaBuilder CriteriaQuery 来检索我的数据 这在运行应用程序时工作得很好 但是
  • 断点会停止所有线程吗?

    如果我的程序中有两个线程同时运行 并在其中一个线程上设置了断点 那么当遇到此断点时 另一个线程也会停止 还是会继续执行 我用 Java 编写并使用 NetBeans 断点可以选择它们的行为方式 挂起单个线程或所有线程
  • hibernate 6.0.2.Final 和 spring boot 2.7.0 的entityManagerFactory bean 未配置问题

    所以最近我想升级我的 Spring Boot 项目项目的一些依赖项 特别是这些组件 雅加达 EE 9 弹簧靴2 7 休眠 6 0 2 Final 完成此操作后 所有更新和代码折射 更新将 javax 导入到 jakarta 以及一些 hib
  • 为什么\0在java中不同系统中打印不同的输出

    下面的代码在不同的系统中打印不同的输出 String s hello vsrd replace 0 System out println s 当我在我的系统中尝试时 Linux Ubuntu Netbeans 7 1 它打印 When I
  • Eclipse 中的 Java EE 视角

    我有标准版的 eclipse Galileo 现在我想在上面开发企业应用程序 知道如何获得 Java EE 视角吗 标准版如何安装Java EE工具 我有同样的问题 我首先使用 Ubuntu 软件中心安装了最新的 Eclipse 平台 In
  • 迁移到 Jakarta EE:无法找到 URI 的 taglib [c]:[jakarta.tags.core] [重复]

    这个问题在这里已经有答案了 我尝试从 Spring 5 升级到 Spring 6 并收到以下错误 Unable to find taglib c for URI jakarta tags core 我的 pom 中有以下内容
  • spring data jpa复合键重复键记录插入导致更新

    我有一个具有复合键的实体 我试图通过使用 spring data jpa 存储库到 mysql 数据库来持久化它 如下所示 Embeddable public class MobileVerificationKey implements S
  • 实体类的重建

    我尝试在 netbeans 8 0 1 上运行带有 hibernate spring 和 jpa 的 Web 应用程序 但现在我在编译应用程序时遇到了这个异常 以下是错误 Failed to execute goal org apache
  • 用于折叠/展开方法的 NetBeans 快捷键

    这是一个 IDE 问题 我总是使用折叠的方法 因为我希望能够一起看到我的方法 这有点耗时 因为我必须使用鼠标向上滚动到方法的声明 然后单击 减号 图标 然后分别转到我想要处理的方法并单击 加号 图标 有没有办法通过键盘快捷键来折叠 以及分别
  • JPA 中的复合键

    我想创建一个具有自动生成的主键的实体 而且还有一个由其他两个字段组成的唯一复合键 我如何在 JPA 中执行此操作 我想这样做是因为主键应该用作另一个表中的外键 并且使其复合并不好 在下面的代码片段中 我需要命令和模型是唯一的 pk当然是主键
  • 如何将 javax.persistence.Column 定义为 Unsigned TINYINT?

    我正在基于 MySQL 数据库中的现有表创建 Java 持久性实体 Bean 使用 NetBeans IDE 8 0 1 我在这个表中遇到了一个字段 其类型为 无符号 TINYINT 3 我发现可以执行以下操作将列的类型定义为 unsign
  • 如何使用 Hibernate (EntityManager) 或 JPA 调用 Oracle 函数或过程

    我有一个返回 sys refcursor 的 Oracle 函数 当我使用 Hibernate 调用该函数时 出现以下异常 Hibernate call my function org hibernate exception Generic
  • JPA 中所有命名查询的列表

    我想获取应用程序中所有 NamedQueries 的列表 并且我还想在运行时一般调用它们 是否有一个选项可以获取列表以及某种元数据 一般来说是某种反射 另一个线程为 NHibernate 提供了某种解决方案 即使使用 Hibernate 作
  • 保存 JPA 实体时出现 java.lang.StackOverflowError

    我正在使用 Spring JPA 将实体保存到数据库中 下面是代码结构 客户 java Entity Table name customer Data public class Customer Id GeneratedValue stra
  • 删除向导请求响应日志记录

    我想将 dropwizard 中的每个请求和响应记录到不同的文件中 例如我希望所有请求都被登录 var log applicationname request log以及所有回复 var log applicationname respon
  • Java EE 快速通道(快速学习企业 Java)[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 限制 JPQL 中的结果数量

    如何限制从数据库检索结果的数量 select e from Entity e I need only 10 results for instance 您可以尝试像这样给出 10 个要显式获取的结果 entityManager createQ
  • 为什么我的 @OneToMany 属性出现主键违规?

    我有一个实体 Entity public class Student GeneratedValue strategy GenerationType AUTO Id private long id OneToMany private Set
  • 外部实体更改后索引不更新

    我目前正在开发一个项目 使用 JPA 2 1 保存数据并使用 hibernate search 4 5 0 final 搜索实体 映射类和索引后 搜索工作正常 但是 当我更改值时描述B 类从 someStr 到 anotherStr 数据库
  • JPA 查询可以将结果作为 Java 映射返回吗?

    我们目前正在建设一个Map手动基于命名 JPA 查询返回的两个字段 因为 JPA 2 1 仅提供getResultList method NamedQuery name myQuery query select c name c numbe

随机推荐

  • 在猫鼬的整个应用程序中共享数据库连接

    使用最新的 mongoose 更新 您不能再像我以前那样进行用户建模 我需要在整个应用程序中共享相同的数据库连接 https github com LearnBoost mongoose issues 1249 https github c
  • 按位置对 MultiIndex pandas DataFrame 进行切片

    我目前正在尝试按位置对具有三个级别的多索引数据帧进行切片 我正在使用熊猫 19 1 Level0 Level1 Level2 Value 03 00368 A Item111 6 9 03 00368 A Item333 19 2 03 0
  • d3.js 中拖动后(有时)单击事件未触发

    观察到的行为 我正在使用 d3 js 并且我想根据以下情况更新一些数据drag https github com mbostock d3 wiki Drag Behavior wiki on事件 并重绘事件之后的所有内容dragend ht
  • iOS:不明确的属性合成行为。继承相关

    我在用着AppCode它标记了一个非常大的项目代码中的一个有趣的情况 预ARC 子类定义并合成一个称为委托的属性 实际上属性声明已经被注释掉了 但是 synthesize delegate delegate 声明被留下了 该代码可以编译 大
  • 当调用带有警告“控制到达非空函数末尾”的函数时(实际上)会发生什么?

    我知道这条消息的含义 我只是想知道为什么会这样not一条错误消息 但只是一个警告 在这种情况下会发生什么 例如 假设我有一个函数 int f 当我调用它时会发生什么 编译器是否添加了 未初始化 的返回int在这种情况下 或者丢失的返回可能会
  • SQL WHERE 语句?

    如果我想返回 A 列为 null 或 B 列为 null 的行 但不返回两者都为 null 的行 那么我的 WHERE 子句应该在 SQL 语句中是什么 WHERE ColA is NULL AND ColB is NOT NULL OR
  • 如何从不同 JVM 中的独立 java 程序调用 EJB

    我使用具有 glassfish 服务器的 NETbeans IDE 开发了 EJB 我可以从独立的java调用它 只要这个java项目是在NETbeans下开发并在相同的JRE下运行的 但我需要找出如何在不同的 jre 中运行它 我在这方面
  • Iron 路由器中的多个订阅

    我一直在开发一个使用评论功能的应用程序 这导致必须订阅发表评论的集合和评论集合本身 现在看起来像这样
  • Facebook 页面插件无法运行 - 仅适用于一个网站

    我已将页面插件集成到我的目录中 ruhrlink de info php schluessel 150991 不起作用 其他的可以 当我在开发者网站 gt 页面插件中手动输入网址时 它在那里也不起作用 https www facebook
  • QMainWindow::showMaximized() 不更新大小

    我正在尝试创建一个QMainWindow封装一个QGraphicsView我把它放进去 我希望它一开始就最大化 所以我这样做 QMainWindow mainWindow new QMainWindow mainWindow gt setW
  • 使用常量 NSString 作为 NSUserDefaults 的键

    我正在使用 NSUSerDefaults 来存储用户首选项 我记得在某处读到过 将键设置为常量是一个好主意 我同意 以下代码是我目前拥有的 NSUserDefaults standardUserDefaults setObject NSNu
  • AVAudioRecorder 未写出正确的 WAV 文件头

    我正在 iPhone 上开发一个项目 我使用 AVAudioRecorder 从设备麦克风录制音频 然后对录音进行操作 为了确保我正确地从文件中读取样本 我使用 python 的 wave 模块来查看它是否返回相同的样本 然而 当尝试打开
  • 错误:从内部类内部访问局部变量 a;需要宣布最终

    class Outer void m1 int a 12 class Inner void show System out println a new Inner show 在这里 当我编译此代码时 我收到错误 即局部变量 a 是从内部类中
  • Android 模拟器 x86 HAXM GPU Windows 7 崩溃 BSOD

    我不懂英语 但我会尽力解释 我使用最新版本的 Android SDK 从 AVD Manager 模拟器 intel x86 和 intel HAXM 运行 它工作正常 但是当我启用主机 GPU 时 Windows 7 崩溃 BSOD 这种
  • 确定非空列表条目是否“连续”的 Pythonic 方法

    我正在寻找一种方法来轻松确定列表中所有非 None 项目是否出现在单个连续切片中 我将使用整数作为非 None 项目的示例 例如 列表 None None 1 2 3 None None 满足我对连续整数条目的要求 相比之下 1 2 Non
  • 推进并离开加入

    在教义中我可以 q Doctrine Query create gt from One o gt where t text aaa gt andWhere h text bbb gt leftJoin o Two t gt leftJoin
  • 如何在 VBA 中克隆范围对象

    我正在使用 Excel Visual Basic 编辑器在 VBA 中编写 Excel 宏 我不知道如何复制 克隆范围对象 而不是创建对同一对象的第二个引用 MemberwiseClone 函数似乎不可用 我认为它将针对内置类型实现 我需要
  • 路由器在 Ionic 上导航,并在 ios 上使用角度动画闪烁动画

    我正在使用 angular animations 在 Ionic v4 上的两个页面之间设置页面转换 这一切在 chrome 上都很好用 但在 safari 上却不行 在一个只有两个页面 热切加载 的简单应用程序上 我仍然遇到问题 与我尝试
  • android 录音时可以静音吗

    我想构建一个应用程序 我想在通话中调制声音 我编写了一段代码来记录声音并以不同的音调播放它 现在我想要在通话时使用此功能 我想将通话静音 记录声音然后以不同的音调播放它 如何将通话静音但仍录制音频 此答案可在通话期间使麦克风静音 Boole
  • NetBeans IDE 在“清理和构建”或外部更改时发出异常编译器错误。IDE 无法识别 JPA 生成的静态元模型

    我已经完全厌倦了使用 NetBeans IDE 8 x 目前使用 8 0 1 几个月了 它看起来就像地狱 说真的 当对项目 尤其是 Java EE Web 应用程序 在不同包中包含数百个 Java 类 进行一些外部更改或尝试清洁和构建项目