当前位置: 首页 > 面试题库 >

通过Maven生成UUID

邢灿
2023-03-14
问题内容

我需要在maven pom.xml文件中设置一个属性,该属性应该是UUID。谁能告诉我

将属性设置为UUID的最佳方法是什么?

我正在使用启动gigaspaces的配置文件,并且gigaspaces需要组名,

想要唯一(uuid)。因此,在我的个人资料中,我想设置一个groupName属性值

每次构建都应更改。我自己写了一个UUIDGenerator插件,因为没有找到任何插件。

因此,我正在寻找如何实现这一目标?是写一个插件更好的选择,还是有一个

更容易的选择。

谢谢,

舍哈尔


问题答案:

首先,如果您的设置需要一个叫做“组名”的东西,那么您可能应该提供一个有意义的值。如果必须唯一,则可以附加一些生成的字符,例如“
MyApplication-10937410”。另外,在我看来,使用UUID就像使用大锤敲碎螺母。但这与您的实际问题无关,所以这是我建议的解决方案:

如果您还没有这样做,请创建一个maven插件(有一个原型)。添加此依赖项:

    <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-project</artifactId>
        <version>2.2.1</version>
    </dependency>

这就是您的MOJO外观:

/**
 * Goal which generates a group name.
 *
 * @goal generate
 * @phase initialize
 */
public class GroupNameGeneratorMojo extends AbstractMojo {

    /**
     * @parameter expression="${project}"
     * @required
     * @readonly
     */
    private MavenProject project;

    @Override
    public void execute() throws MojoExecutionException {
        String groupName = ... ;
        project.getProperties().setProperty("uniqueGroupName", groupName);
    }

}

在您的实际项目pom中,使用所需的${uniqueGroupName}任何位置并按如下方式配置您的插件

<build>
    <plugins>
        <plugin>
            <groupId>the.plugin.groupid</groupId>
            <artifactId>groupNameGenerator</artifactId>
            <executions>
                <execution>
                    <goals><goal>generate</goal></goals>
                </execution>
            </executions>
        <plugin>


 类似资料:
  • 问题内容: 我遵循了JPA modelgen 指南,并且能够生成所需的规范元模型。通过此pom设置: 生成的源已在指定目录中正确创建,我必须手动将其指定为eclipse项目类路径中的源才能使用它。当我触发Maven时,日志显示或,并且我仍然可以成功构建。所以我的问题是,在创建元模型时这种预期/正确的行为吗?还是我错过了cofig中的某些内容?谢谢 问题答案: 我也在使用JPA Metamodel

  • 我有两个XSD,其中一个包含另一个,让我们称它们为A和B。 B有很多xs:complexType定义,并且包含在a中,但是a只对其中的一些定义感兴趣。 现在发生的事情是为B中定义的所有类型生成类。我想要实现的是只为A直接引用的类型生成类。 我曾尝试修改XSD A以导入B,而不是包含,但对于maven jaxb插件来说,效果并不理想。 XSD A导入B: 生成源的插件设置: 我知道有一种方法可以从命

  • 或者,我可以从Maven命令行生成单一类型的报告,ala... 如何从Maven命令行生成多个不同的报告类型? 显然,我只能做一个。...我在下面试过这个,但它不起作用! (注意:上面的属性使用“formats”和“format”。上面总是创建默认的HTML报告,而没有看到两种指定的格式。我使用的是Maven 3.2.3和Cobertura插件版本2.0.3。) 请帮帮我,我的Googol Fu不

  • 问题内容: 我正在使用mpdf库生成用户生成的html的PDF。我可以使PDF成功保存到服务器,但是我希望PDF在用户浏览器中打开。我尝试使用mpdf的输出选项在浏览器中打开文件或提示下载,但是当我使用AJAX将html数据发送到脚本时都没有发生。 这是我的AJAX: 这是我的PDF生成脚本: 我正在使用AJAX,因此无需浏览页面即可创建PDF。我的代码中是否有错误,还是应该使用其他方法? 问题答

  • 我首先通过执行生成了一个gwt maven项目- mvn原型:生成-Darch etypeGroupId=org.codehaus.mojo-Darch etypeartifactId=gwt-maven-plugin-Darch etypeVersion=2.7.0 在那之后,pom。xml如下所示: 然后我通过内置的eclipse函数将这个项目导入eclipse——导入现有的Maven项目。

  • 我正在编写一个通用组件,该组件封装了一个生成器并执行常规操作: 按键筛选 转换值 等等 为了尽可能接近地模拟包装生成器,如果生成器使用引用,我想使用引用。 当我尝试使用 构造的情况下迭代生成器对引用完全不起作用: