当前位置: 首页 > 知识库问答 >
问题:

使用Maven Wildfly插件部署到JBoss EAP 7

洪飞鸿
2023-03-14

我正试图通过Maven将应用程序部署到本地JBoss EAP 7.0服务器。通过管理控制台和通过“doDeploy”方法手动部署,部署工作正常。

我不知道我需要做什么才能让它工作。

我试图按照网站上的说明,但没有用:https://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_application_platform/7.0/html/configuration_guide/deploying_applications#deploying_apps_using_maven

这里是pom.xml的相关部分

<build>
    <finalName>${project.artifactId}_${project.version}</finalName>
    <sourceDirectory>src</sourceDirectory>
    <testSourceDirectory>test</testSourceDirectory>
    <plugins>
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.7.0</version>
            <configuration>
                <source>${java.version}</source>
                <target>${java.version}</target>
            </configuration>
        </plugin>
        <plugin>
            <artifactId>maven-war-plugin</artifactId>
            <version>3.0.0</version>
            <configuration>
                <warSourceDirectory>WebContent</warSourceDirectory>
            </configuration>
        </plugin>
        <plugin>
            <artifactId>maven-javadoc-plugin</artifactId>
            <version>3.0.0</version>
            <configuration>
                <doclint>none</doclint>
            </configuration>
        </plugin>

        <plugin>
            <groupId>org.wildfly.plugins</groupId>
            <artifactId>wildfly-maven-plugin</artifactId>
            <version>1.2.1.Final</version>
            <configuration>
                <hostname>${deploy.jboss.hostname}</hostname>
                <username>${deploy.jboss.user}</username>
                <password>${deploy.jboss.pass}</password>
            </configuration>
        </plugin>

    </plugins>
</build>

不幸的是,在运行mvn clean wildfly时,maven出现了以下错误:deploy-X-e

Caused by: java.lang.IllegalStateException: WFLYCTL0216: Management resource '[]' not found
at org.wildfly.plugin.core.DefaultDeploymentManager.hasDeployment(DefaultDeploymentManager.java:370)
at org.wildfly.plugin.core.DefaultDeploymentManager.hasDeployment(DefaultDeploymentManager.java:331)
at org.wildfly.plugin.core.DefaultDeploymentManager.forceDeploy(DefaultDeploymentManager.java:85)
at org.wildfly.plugin.deployment.DeployMojo.executeDeployment(DeployMojo.java:70)
at org.wildfly.plugin.deployment.AbstractDeployment.execute(AbstractDeployment.java:150)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
... 21 more

关于问题的起因有什么想法吗?

编辑:我在识别问题方面取得了一些进展。这个问题似乎源于我的standalone.xml服务器配置使用了rbac身份验证机制。使用“简单”部署可以立即工作,但使用带有特定用户名和密码的“rbac”会失败,我无法让它工作。我在这里的JBoss论坛上打开了一张票以进一步曝光:https://developer.jboss.org/message/980860#980860

共有1个答案

司寇安宜
2023-03-14

对于遇到这个问题的任何人来说,问题是通过将standalone.xml更改为手动使用“rbac”,它不会“完全”禁用简单的身份验证。在James R. Perkins发现了一些问题后,他发现了这个问题,但可以通过对standalone.xml执行以下操作手动解决:

<management>  
    <security-realms>  
        <security-realm name="ManagementRealm">  
            <authentication>  
                <local default-user="$local" skip-group-loading="true"/> <!-- THIS LINE WAS REMOVED --> 

最后一行被删除,我现在可以使用maven插件进行部署。

有关更多详细信息,请参见JBoss开发者论坛上发布的问题:https://developer.jboss.org/message/980860#980860

 类似资料:
  • 我从原型io开始。fabric8:camel cxf代码是第一个原型,但我无法使用以下maven命令进行部署,因为没有定义fabric8。mvn-P!Spring Boot清理编译-X fabric8:deploy-DskipTests=true-Dfabric8。upload=true-Dfabric8。约洛基亚尔=http://10.191.231.12:8181/jolokia 然后我修改了

  • 我试图使用maven shade插件构建uber jar(构建docker映像),并将项目jar部署到maven存储库。我不想将uber jar部署到maven Repo。因此,要么我需要能够从maven deploy插件中排除特定文件,要么让maven shade插件将uber jar放在不同的位置,这样deploy插件就不会接收到它。 这两件事都有可能吗?

  • 官方文件目录:kubernetes/cluster/addons/fluentd-elasticsearch $ ls *.yaml es-controller.yaml es-rbac.yaml es-service.yaml fluentd-es-ds.yaml kibana-controller.yaml kibana-service.yaml fluentd-es-rbac.yaml

  • 到 heapster release 页面 下载最新版本的 heapster $ wget https://github.com/kubernetes/heapster/archive/v1.3.0.zip $ unzip v1.3.0.zip $ mv v1.3.0.zip heapster-1.3.0 $ 官方文件目录: heapster-1.3.0/deploy/kube-config/i

  • 官方文件目录:kubernetes/cluster/addons/dashboard 使用的文件: $ ls *.yaml dashboard-controller.yaml dashboard-rbac.yaml dashboard-service.yaml 新加了 dashboard-rbac.yaml 文件,定义 dashboard 使用的 RoleBinding。 由于 kube-a

  • 官方文件目录:kubernetes/cluster/addons/dns 使用的文件: $ ls *.yaml *.base kubedns-cm.yaml kubedns-sa.yaml kubedns-controller.yaml.base kubedns-svc.yaml.base 已经修改好的 yaml 文件见:dns。 系统预定义的 RoleBinding 预定义的 RoleB