如何调试grails运行时异常?

发布于 2024-09-19 22:32:29 字数 348 浏览 6 评论 0原文

我有一个 grails 项目和一个 java 项目。 java 项目是一组独立的 POJO 类,我只是将它们转储到我的 grails 项目下的 src/java 中。

在控制器中,我为此包添加了一条导入语句。

现在,当我执行 grails run-app 并尝试运行该程序时,我收到 grails 运行时异常。它说 NoClassDefFound 是我的一个 POJO 导入的包中的类。

错误消息显示在我的控制器的一行上,但缺少的类来自我的 POJO 所需的外部 jar。我将它所抱怨的 .jar 移至 grails 项目的 lib 文件夹中。我还需要做什么?

我如何找出导致此问题的真正原因?

谢谢!

I have a grails project and a java project. The java project was a standalone set of POJO classes, and I just dumped them into src/java under my grails project.

In the controller, I added an import statement for this package.

Now when I do a grails run-app and try to run the program, I get a grails runtime exception. It is saying NoClassDefFound for a class that is in a package that one of my POJOs imports.

The error message is showing on a line of my Controller, but the class that is missing is from an external jar that my POJO needed. I moved the .jar that it is complaining about to the grails project's lib folder. What else do I need to do?

How do I track down what is really causing this problem?

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

你げ笑在眉眼 2024-09-26 22:32:29

低级方法:运行 ProcessMonitor (现在集成了以前的单独的文件监视器)。通过它你可以看到 JVM 正在搜索什么类文件。

另外,您可以将 -verbose:class 添加到 grails bin 目录下的 startGrails/startGrails.bat 中定义的 JAVA_OPTS 中。这将显示类加载器的输出(详细!)。

可能还需要其他 JAR。

a low-level approach: run ProcessMonitor (which now integrates the formerly separate File Monitor). With it you can see what class file the JVM is searching for.

Also, you can add -verbose:class to the JAVA_OPTS defined in startGrails/startGrails.bat in the bin directory of grails. This will show the output (verbose!) from the class loader.

Possibly there are other JARs that are needed.

那请放手 2024-09-26 22:32:29

您是否尝试过将此 jar 文件添加为 BuildConfig.groovy 的依赖项?
让 Grails 处理所有依赖项。

Have you tried adding this jar file as a dependency to BuildConfig.groovy?
Let Grails handle all dependencies.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文