【问题标题】:Crash in Dynamic Code Evolution VMDynamic Code Evolution VM 中的崩溃
【发布时间】:2014-06-03 10:03:05
【问题描述】:

我正在尝试使用 Dynamic Code Evolution VM 在 IntelliJ 中使用 DCEVM 集成插件运行 Swing 客户端。当我启动应用程序时,它会崩溃并出现以下异常

Exception in thread "main" java.lang.UnsatisfiedLinkError: no freetype in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1860)
    at java.lang.Runtime.loadLibrary0(Runtime.java:845)
    at java.lang.System.loadLibrary(System.java:1084)
    at sun.font.FontManagerNativeLibrary$1.run(FontManagerNativeLibrary.java:59)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.font.FontManagerNativeLibrary.<clinit>(FontManagerNativeLibrary.java:32)
And
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: Could not initialize class sun.font.SunFontManager
    at sun.font.FontDesignMetrics.getMetrics(FontDesignMetrics.java:264)
    at sun.swing.SwingUtilities2.getFontMetrics(SwingUtilities2.java:1012)
    at javax.swing.JComponent.getFontMetrics(JComponent.java:1624)
    at javax.swing.plaf.synth.SynthGraphicsUtils.getPreferredSize(SynthGraphicsUtils.java:283)
    at javax.swing.plaf.synth.SynthGraphicsUtils.getMinimumSize(SynthGraphicsUtils.java:195)
    at javax.swing.plaf.synth.SynthButtonUI.getMinimumSize(SynthButtonUI.java:461)

我验证了 SunFontManager 存在于 rt.jar 中。有什么想法吗?

【问题讨论】:

  • 我知道这个问题很老,但我遇到了同样的问题......当我切换到另一个 VM 时,错误消失了,但我希望能够热插拔 :( 你是如何解决的它,还是您还使用了其他虚拟机?
  • 我找不到任何解决此问题的方法。但现在我使用的是hotswapagent.org。它基于 DCEVM。非常适合我。

标签: java swing intellij-idea


【解决方案1】:

DCEVM 不附带字体。因此,当 JVM 尝试加载字体时,它找不到任何字体并崩溃。幸运的是,修复非常简单。只需从另一个 JDK/JRE 复制字体。您可以在 /jre/lib/fonts 中找到它们。将整个目录复制到 /lib。

【讨论】:

  • 嗨彼得..你能看看我的帖子here。我相信这是一个类似的问题,但我尝试了你的解决方案但没有运气。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-12-12
  • 2023-03-21
  • 1970-01-01
  • 1970-01-01
  • 2013-05-14
相关资源
最近更新 更多