我想在终端中使用命令asadmin deploy testapp-1.0-SNAPSHOT.jar
在GlassFish 4上部署一个JAR。JAR的完整布局是
/META-INF/MANIFEST.MF
/META-INF/maven/com.test/testapp/pom.properties
/META-INF/maven/com.test/testapp/pom.xml
/com/test/testapp/*.class
但每次我收到错误
remote failure: Archive type of jar was not recognized
Command deploy failed.
我用Maven编译并打包了JAR。
先谢谢你。
3条答案
按热度按时间goqiplq21#
似乎只有包含企业Java Bean的单独JAR才能被部署。
有两个选项可以使类成为企业Java Bean。
1.使用组件定义来自包
javax.ejb
的注解来注解类(例如javax.ejb.Stateless
)1.在META-INF目录中打包的部署描述符
ejb-jar.xml
(如果使用GlassFish,则为glassfish-ejb-jar.xml
)中指定Enterprise Java Bean,如5.2 Packaging Enterprise Beans所示这是取自Simple Stateless with Descriptor的一个简单示例
yvfmudvl2#
您不会将JAR文件部署到Java EE容器中。您希望将其打包到WAR或EAR文件中,该文件的WEB-INF/lib目录中可能有JAR文件。
gajydyqb3#
与this post一样,替换代码中的lambda表达式,然后重试。会奏效的,我相信。