我们使用 solaris 在服务器上运行构建。将 jre 1.6 更改为 jre 1.7 后,运行所有测试的实用程序开始抛出异常(对不起我的英语):
[java] Exception in thread "main" java.lang.Error: Cannot load javax.swing.plaf.metal.MetalLookAndFeel
[java] at javax.swing.UIManager.initializeDefaultLAF(UIManager.java:1347)
[java] at javax.swing.UIManager.initialize(UIManager.java:1455)
[java] at javax.swing.UIManager.maybeInitialize(UIManager.java:1422)
[java] at javax.swing.UIManager.getDefaults(UIManager.java:656)
[java] at javax.swing.UIManager.put(UIManager.java:985)
[java] at org.uispec4j.interception.ui.UISpecLF.init(UISpecLF.java:11)
[java] at org.uispec4j.UISpec4J.init(UISpec4J.java:32)
[java] at org.uispec4j.UISpecTestCase.<clinit>(UISpecTestCase.java:31)
[java] at java.lang.Class.forName0(Native Method)
[java] at java.lang.Class.forName(Class.java:186)
我也尝试在 build.xml 中切换另一个 laf 来解决这个问题,但它没有帮助。
(jvmarg value="-Dswing.defaultlaf=com.jgoodies.looks.plastic.PlasticXPLookAndFeel" )
是什么原因?如何修复它?