java - 获取maven插件中的pom参数

标签 java maven svn pom.xml maven-plugin

我正在开发一个 Maven 插件。它在构建时被其他项目使用。该插件使用用户名和密码来连接到 svn 存储库/服务器。这是该 Maven 插件 pom.xml 的一部分:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-release-plugin</artifactId>
    <configuration>
        <useReleaseProfile>true</useReleaseProfile>
        <releaseProfiles>complete</releaseProfiles>
        <username>${username}</username>
        <password>${password}</password>
    </configuration>
</plugin>

我需要在插件运行时(即正在构建其他项目时)动态获取用户名和密码的值。我怎样才能做到这一点?

谢谢!

编辑:

当其他用户使用此插件构建他们的项目时,他们不会通过命令行传递他们的用户名/密码。 (如:-DuserName=userNameVal)。但该插件工作正常,可以使用用户名和密码连接到 svn 存储库/服务器。问题是我不明白这个插件如何获取这些值。

还有一件事:我需要在我的 java 代码中获取值。像这样的事情:

String username = getUserName();

最佳答案

通过命令行传递值,如下所示:-

mvn install "-DuserName=userNameValue"

然后在您的 pom.xml 中您可以执行如下操作:-

 <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-release-plugin</artifactId>
    <configuration>
        <useReleaseProfile>true</useReleaseProfile>
        <releaseProfiles>complete</releaseProfiles>
        **<username>${userName}</username>**
        <password>${password}</password>
    </configuration>
</plugin>

关于java - 获取maven插件中的pom参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32293421/

相关文章:

svn - Subversion 将提交与先前的提交合并

Java方法调用顺序

java - 项目文件上的 intellij 图标

maven - java.lang.ClassNotFoundException : org. json.JSONException

尽管 pom 中包含了所有内容,Java 仍找不到 ResteasyClient

svn - 有没有办法防止在 Tortoise SVN 中保存身份验证

c++ - 如何为 QT-Designer 中的小部件设置默认可见性值?

java - 12 :xx shown as 00:xx in SimpleDateFormat. 格式 ("hh:mm:ss")

java - 在 IntelliJ IDEA 中从一个项目运行两个主类实例?

maven - 智能 : Adding a Tomcat Plugin in Maven menu