Я пытаюсь развернуть военный файл на удаленном контейнере JBoss 5.1.0.GA, используя файл сборки градиента и Gradle Плагин для грузовых автомобилей Бенджамин Мушко (https://github.com/bmuschko/gradle-cargo-plugin).Gradle + Cargo + JBoss 5.1 = java.lang.ClassNotFoundException: org.jnp.interfaces.NamingContextFactory
Я испытываю java.lang.ClassNotFoundException: org.jnp.interfaces.NamingContextFactory при запуске задачи loadDeployRemote в очень простом проекте. Сообщение about Cargo deployment on a JBoss 5.1.0.GA using Maven plugin помогло мне настроить зависимости. Недопустимый класс NamingContextFactory также определен, например, в зависимости от jboss-as-varia. Очевидно, я должен что-то упустить.
Проект - это только папка со следующим сценарием Gradle, не более того. Я должен добавить, что я запускаю скрипт сборки из виртуальной машины linux, виртуального хоста, использующего ArchLinux, и хочу удаленно развернуть на сервере JBoss 5.1.0.GA, запущенном на хосте. Я могу получить доступ к JBoss через адрес шлюза (10.0.2.2) от гостя, поэтому, я думаю, это не проблема.
Я попытался предоставить самый простой файл построения градиента для показа этой проблемы. Любые подсказки о том, что нужно сделать, чтобы сделать эту работу? Любая помощь оценивается.
Вот мой build.gradle файл:
apply plugin: 'war'
apply plugin: 'com.bmuschko.cargo'
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.bmuschko:gradle-cargo-plugin:2.1.1'
}
}
repositories {
mavenCentral()
dependencies {
providedCompile 'org.jboss.jbossas:jboss-as-jbossas-remoting:5.1.0.GA'
providedCompile 'org.jboss.jbossas:jboss-as-client:5.1.0.GA'
providedCompile 'org.jboss.jbossas:jboss-as-varia:5.1.0.GA'
providedCompile 'org.jboss.integration:jboss-profileservice-spi:5.1.0.GA'
}
}
cargo {
containerId = 'jboss51x'
port = 8080
remote {
username = "admin"
password = "admin"
hostname = "10.0.2.2"
}
deployable {
context = 'myawesomewebapp'
}
}
Вот это выход для 'Gradle cargoDeployRemote -i' показывает ошибку:
Executing task ':cargoDeployRemote' (up-to-date check took 0.002 secs) due to: Task.upToDateWhen is false. Container ID = jboss51x Deployable artifacts = [/home/gerald/testapp/build/libs/testapp.war] Starting action 'deploy' for remote container 'JBoss 5.1.x' on ' http://10.0.2.2:8080 ' Container properties = [:] :cargoDeployRemote FAILED :cargoDeployRemote (Thread[Daemon worker Thread 14,5,main]) completed. Took 0.588 secs.
FAILURE: Build failed with an exception.
- What went wrong: Execution failed for task ':cargoDeployRemote'. org.codehaus.cargo.container.ContainerException: Failed to create deployer with implementation class org.codehaus.cargo.container.jboss.JBoss51xRemoteDeployer for the parameters (container [id = [jboss51x]], deployer type [remote]).
А вот исключение:
Caused by: org.codehaus.cargo.container.ContainerException: Failed to create deployer with implementation class org.codehaus.cargo.container.jboss.JBoss51xRemoteDeployer for the parameters (container [id = [jboss51x]], deployer type [remote]).
at org.codehaus.cargo.generic.spi.AbstractGenericHintFactory.createImplementation(AbstractGenericHintFactory.java:156)
at org.codehaus.cargo.generic.spi.AbstractIntrospectionGenericHintFactory.createImplementation(AbstractIntrospectionGenericHintFactory.java:93)
at org.codehaus.cargo.generic.deployer.DefaultDeployerFactory.createDeployer(DefaultDeployerFactory.java:140)
at org.codehaus.cargo.generic.deployer.DefaultDeployerFactory.createDeployer(DefaultDeployerFactory.java:160)
at org.codehaus.cargo.ant.CargoTask.executeActions(CargoTask.java:758)
at org.codehaus.cargo.ant.CargoTask.execute(CargoTask.java:577)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
... 70 more
Caused by: java.lang.reflect.InvocationTargetException
at org.codehaus.cargo.generic.deployer.DefaultDeployerFactory.createInstance(DefaultDeployerFactory.java:244)
at org.codehaus.cargo.generic.deployer.DefaultDeployerFactory.createInstance(DefaultDeployerFactory.java:42)
at org.codehaus.cargo.generic.spi.AbstractGenericHintFactory.createImplementation(AbstractGenericHintFactory.java:150)
... 77 more
Caused by: org.codehaus.cargo.util.CargoException: Cannot locate the JBoss connector classes! Make sure the required JBoss JARs (or Maven dependencies) are in CARGO's classpath.
More information on: http://cargo.codehaus.org/JBoss+Remote+Deployer
at org.codehaus.cargo.container.jboss.JBoss5xRemoteDeployer.<init>(JBoss5xRemoteDeployer.java:161)
at org.codehaus.cargo.container.jboss.JBoss51xRemoteDeployer.<init>(JBoss51xRemoteDeployer.java:41)
... 80 more
Caused by: java.lang.ClassNotFoundException: org.jnp.interfaces.NamingContextFactory
at org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.java:1366)
at org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1315)
at org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:1068)
at org.codehaus.cargo.container.jboss.JBoss5xRemoteDeployer.<init>(JBoss5xRemoteDeployer.java:156)
... 81 more
Ваши репозитории.зависимости.providedCompile кажется неуместным. Вероятно, это должен быть buildscript.dependencies.classpath. У меня такая же проблема с java.lang.ClassNotFoundException: org.jnp.interfaces.NamingContextFactory и был бы признателен, если вы поделитесь любыми ответами, которые вы нашли здесь. –