我正在部署一个尝试使用但javac
最终失败的应用程序java.lang.NoClassDefFoundError: com/sun/tools/javac/Main
我应该如何使部署在 JBoss 7 或 WildFly 中的应用程序可用javac
?tools.jar
我正在部署一个尝试使用但javac
最终失败的应用程序java.lang.NoClassDefFoundError: com/sun/tools/javac/Main
我应该如何使部署在 JBoss 7 或 WildFly 中的应用程序可用javac
?tools.jar
这是我为以下创建 JBoss 模块所遵循的过程javac
:
mkdir -p modules/com/sun/tools/javac/main
ln -s /usr/java/latest/lib/tools.jar modules/com/sun/tools/javac/main/tools.jar
使用内容创建modules/com/sun/tools/javac/main/module.xml
:
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.1" name="com.sun.tools.javac">
<resources>
<resource-root path="tools.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
<system export="true">
<paths>
<path name="com/sun/tools/javac"/>
</paths>
</system>
</dependencies>
</module>
注意:我使用了符号链接,因为resource-root
path
属性似乎不支持绝对路径。
然后添加或创建文件Dependencies: com.sun.tools.javac
以声明应用程序使用此新模块:https ://access.redhat.com/documentation/en-US/JBoss_Enterprise_Application_Platform/6.2/html/Development_Guide/Add_an_Explicit_Module_Dependency_to_a_Deployment1.htmlMETA-INF/MANIFEST.MF
jboss-deployment-structure.xml