Maven原型中的动态文件名

Tom*_* K. 5 maven maven-archetype

我和Maven有问题.我试图创建原型,但我现在不知道如何将源文件放到目录中${groupId}/${artifactId}.如果我尝试从此原型创建项目,则文件将隐式存储在${groupId}目录中.看来Maven认为,组ID是包名.但我使用的${groupId}/${artifactId}是包名,所以我需要将源文件存储在${groupId}/${artifactId}目录中.我见过解决方案:将文件放入__artifactId__目录.双下划线应确定一个变量.但是它没有任何效果.变量似乎是空的,但是在源文件中的包名称中成功使用.

有enybody想法,在文件名中使用双下划线时应该使用哪种技巧?

Com*_*ade -7

当您像这样创建项目的原型时: mvn archetype:create-from-project -Dinteractive 将包 - 以显式形式设置为项目的根目录。

然后,您创建此原型的项目,以显式形式输入您的根包 ${groupId}.$ {artifactId} 。例子: mvn archetype: generate -DarchetypeGroupId = com.test -DarchetypeArtifactId = my_archetype -DgroupId = com.test -DartifactId = app -Dpackage = com.test.app -Dversion = 1.0-SNAPHOT

在本例中,${groupId} = com.test,${artifactId} = app 和目标包 = com.test.app

  • 我不明白这如何回答创建动态命名文件(就像动态目录一样)的原始问题。 (6认同)