Glassfish的Maven Glassfish插件4

gui*_*ebl 1 deployment ear maven glassfish-4

我最近使用Java EE 7升级到最近发布的Glassfish 4.0.但是我在使用Maven Glassfish插件时遇到了问题.它似乎没有选择存储在我的项目pom.xml中的值

        <plugin>
            <groupId>org.glassfish.maven.plugin</groupId>
            <artifactId>maven-glassfish-plugin</artifactId>
            <version>${org.glassfish.maven.plugin.maven-glassfish-plugin.version}</version>
            <configuration>
                <glassfishDirectory>${glassfish.home}</glassfishDirectory>
                <user>${domain.username}</user>
                <adminPassword>${domain.password}</adminPassword>
                <passFile>${glassfish.home}/domains/domain1/config/domain-passwords</passFile>
                <autoCreate>true</autoCreate>
                <debug>true</debug>
                <echo>true</echo>
                <terse>true</terse>
                <skip>${test.int.skip}</skip>
                <domain>
                    <name>${domain.name}</name>
Run Code Online (Sandbox Code Playgroud)

// ...文件的其余部分

从v3升级到v4后,当我执行mvn glassfish:deploy时,不会选择user和adminPassword属性 - 因此我得到:

[错误]用户身份验证失败:admin [错误]密码来自密码文件:C:/ Users/jhondoe /.../.../ Temp/mgfp6122921747148315370.tmp

Maven Glassfish插件命令正在为pom.xml中的插件滑动我的用户和密码params.

因此,我必须手动部署以便能够测试我的应用程序.

我不想总是手动部署EAR文件我不确定是否有通过命令行传递params的方法.如果有人知道任何可能的解决方案,请告诉我!谢谢!

Lor*_*rva 5

如果您安装了默认的GlassFish 4实例,则只有admin用户没有密码.该用户的密码文件位于名为"admin-keyfile"的域配置目录中.在这种情况下,当您访问GlassFish管理控制台时,不需要身份验证.

在您的插件配置中,只需提供用户和密码文件(删除adminPassword条目):

    <user>admin</user>
    <passwordFile>[...]\domains\domain1\config\admin-keyfile</passwordFile>
Run Code Online (Sandbox Code Playgroud)

如果您决定使用asadmin实用程序更改管理员密码,请更改pom.xml中的插件配置,如下所示:

    <user>admin</user>
    <adminPassword>YOUR_NEW_PASSWORD</adminPassword>
Run Code Online (Sandbox Code Playgroud)

有关详细信息,请查看GlassFish 4文档中的安全指南(https://glassfish.java.net/docs/4.0/security-guide.pdf)