我应该在目标目录中放什么?

What should I put in the target directory?

我正在制作 Maven 插件。我使用另一个库下载文件并将它们放在一个目录中,如果它们不存在,或者如果它们太旧,那么我的代码使用这些文件。

我不想要这个文件,因为开发者使用我的插件错误地提交了这个文件。

将这个 "temporary" 文件放在目标目录中是一个好习惯吗?

一些其他插件创建自己的 "target-custom" 来执行此操作(例如 grunt-maven-plugin 创建一个 target-grunt 目录)。

是的!我什至会说这是一个很好的做法。我会说你 必须 target 文件夹中生成这些文件。

target是Maven构建目录,也就是说所有生成的内容都要放在该文件夹下。正如您在问题中所说,您的 VCS(svn ignore.gitignore)通常应该忽略此文件夹,因为它是一个可以随时删除的临时目录。

所以简单地说:将您的临时内容放在target/{name-of-your-plugin}下;这表明此子文件夹是您的临时文件夹,不会创建不必要的临时文件夹。

附带说明一下,我不知道为什么 grunt-maven-plugin 有一个特殊的 target-grunt 临时目录,但我会注意到 GitHub home page 中的插件是已停产,可通过 gruntBuildDirectory 属性进行配置。