我对arquillian很绿,并且有一些问题。
你能不能试试MDB的这个(可能很棒的)arquillian例子:s? https://github.com/mcs/arquillian-jms-mdb
我还从以下网址下载了JBoss 7.2.0: https://www.redpill-linpro.com/products/jboss/downloads-jboss-and-wildfly
我认为你实际上不需要任何设置,我打赌你已经安装了JDK。
然而,当我使用mvn clean install构建它时,容器似乎启动但是测试永远不会执行。我得到:
Running com.github.mcs.arquillian.mdb.example.ExampleMDBBadTest
apr 17, 2018 3:20:37 EM org.jboss.as.arquillian.container.managed.ManagedDeployableContainer startInternal
INFO: Starting container with: ["C:\Program Files (x86)\Java\jdk1.8.0_92\bin\java", -Xmx768m, -XX:MaxPermSize=384m, -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=y, -ea, -Djboss.home.dir=C:\Fredrik\Applications\jboss-as-7.2.0.Final, -Dorg.jboss.boot.log.file=C:\Fredrik\Applications\jboss-as-7.2.0.Final\standalone\log\boot.log, -Dlogging.configuration=file:/C:/Fredrik/Applications/jboss-as-7.2.0.Final/standalone/configuration/logging.properties, -Djboss.bundles.dir=C:\Fredrik\Applications\jboss-as-7.2.0.Final\bundles, -jar, C:\Fredrik\Applications\jboss-as-7.2.0.Final\jboss-modules.jar, -mp, C:\Fredrik\Applications\jboss-as-7.2.0.Final\modules, -jaxpmodule, javax.xml.jaxp-provider, org.jboss.as.standalone, -server-config, standalone-full.xml]
Listening for transport dt_socket at address: 8787
......没有其他事情发生。
其次,如果我停止并再次运行端口8787似乎仍在使用中,我需要在找到PID后从任务管理器中终止该进程。
我打赌这个例子很棒。 你觉得伙计们,我做错了什么?
祝你好运 弗雷德里克
答案 0 :(得分:0)
消息Listening for transport dt_socket at address: 8787
表示JVM暂停,等待调试器连接到端口8787
。如果您查看启动JVM的命令,您将看到此系统属性:
-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=y
这就是告诉JVM“暂停”并等待8787
上的连接。
此系统属性在项目的arquillian.xml
中配置答案 1 :(得分:0)
我与作者亲自联系,他指出我需要运行Java 7,所以在我的cmd中设置:
set MAVEN_OPTS=-Xms512m -Xmx1024m
set PATH=%PATH%;C:\Fredrik\Applications\Maven\apache-maven-3.3.9\bin
set M2_HOME=C:\Fredrik\Applications\Maven\apache-maven-3.3.9
set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_75
cd C:\dev\git\test\arquillian-jms-mdb-master
我还注意到我需要在arquillian.xml中添加这个属性
<property name="jbossHome">C:\Fredrik\Applications\jboss-as-7.2.0.Final</property>
其次我注意到我似乎必须设置&#34; suspend = n&#34;,否则它只是像以前一样,它只是停止并且&#34;在地址:8787&#34听传输dt_socket ;
第三,我注意到我需要将这些线添加到pom中,否则我得到了 &#34;汇编EJB时出错:ejbVersion 2.x&#34;
需要META-INF / ejb-jar.xml<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-ejb-plugin</artifactId>
<configuration>
<ejbVersion>3.0</ejbVersion>
</configuration>
</plugin>
如果您不同意我的&#34;变通办法,请发表评论&#34;上方。
我怎么认为这个arquillian的例子很棒并帮助了我很多!
祝你好运 弗雷德里克