xnio java_使用Cargo Java API和Jenkins部署到Wildfly时出现“XNIO001001:没有找到XNIO提供程序”错误...

本文档描述了在使用Cargo Java API通过Jenkins部署到Wildfly时遇到的'XNIO001001:没有找到XNIO提供程序'错误。问题仅在Jenkins插件环境中出现,而不在独立应用中。代码示例展示了部署过程,错误堆栈跟踪提供了更多上下文。
摘要由CSDN通过智能技术生成

我正在开发一个Jenkins插件,它使用Codehaus Cargo

Java API管理EAR文件到

Java EE容器的部署,但是在使用API​​部署到远程Wildfly容器时我遇到了一个问题.在部署到其他容器(如Glassfish)时,代码工作正常,但在尝试将EAR文件部署到Wildfly容器时,将返回错误消息XNIO001001:找不到XNIO提供程序.

我花了几个小时研究这个问题,但我找不到任何可能解决问题的方法.尝试部署到在Windows和Ubuntu上运行的Wildfly 8.1和8.2时会发生此问题.我还检查了Wildfly服务器日志,但它不包含与此问题相关的任何内容.

我的问题是如何防止XNIO001001:部署到Wildfly容器时没有XNIO提供程序发现错误,而代码是Jenkins插件的一部分?

我知道Jenkins已经有了类似的插件,并且Cargo可以与Maven一起使用来部署到容器,但这两个选项都不符合我的特定要求.

我编写的用于部署EAR文件的代码如下:

public void redeploy(String containerId, String deployFile, String hostname, String username, String password) {

DeployableFactory deployableFactory = new DefaultDeployableFactory();

Deployable deployable = deployableFactory.createDeployable(containerId, deployFile, DeployableType.EAR);

ConfigurationFactory configurationFactory = new DefaultConfigurationFactory();

Configuration configuration = configurationFactory.createConfiguration(containerId, ContainerType.REMOTE, ConfigurationType.RUNTIME);

configuration.setProperty("cargo.hostname",hostname);

configuration.setProperty("cargo.remote.username", username);

configuration.setProperty("cargo.remote.password", password);

ContainerFactory containerFactory=new DefaultContainerFactory();

Container container = containerFactory.createContainer(containerId, ContainerType.REMOTE, configuration);

DeployerFactory deployerFactory = new

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值