5

我正在尝试为一个由八九名开发人员组成的团队简化开发过程。作为其中的一部分,我将我们的项目转移到 git 和 Maven。

我们的项目使用一些自定义的 Maven 目标来支持我们的 git 工作流。在我们的主要开发平台 NetBeans 中,我可以配置这些自定义目标,通过项目上下文菜单下的“自定义”子菜单触发,这对于来来往往的本科研究人员来说非常友好和理想。项目。

我已经省略nbactions.xml了,而且很.gitignore高兴,这意味着每当新开发人员下载代码并使用 NetBeans 打开 Maven 项目时,他们都会免费获得自定义操作(这需要一些可怕的配置)。

不幸的是,当开发人员配置他们的运行/调试设置并运行我们的项目时,他们的运行/调试/配置文件操作被添加到 nbactions.xml 中,然后被提交,并在他们下一次下载代码时使用其他所有人的私人工作流程。

有没有办法将“自定义”子菜单中可用的操作(或用于触发特定 Maven 目标的一些相当简单的机制)与运行/调试配置分开,这样一个可以被版本控制而另一个被忽略?

“坚持每个人都使用相对路径”并不是一个很好的开始答案,但它特别不适合我们的目的,人们经常不得不将他们的 VM 工作目录指向他们根据自己的方案保留的不同任意目录.

4

2 回答 2

3

经过相当多的研究,似乎没有办法完全按照我的意愿去做。看这里:

http://netbeans.org/bugzilla/show_bug.cgi?id=162764

如果 nbactions.xml 和 nb-configuration.xml 的行为方式与父 POM 相同,那将很有帮助:如果我在父项目中有一个 nbaction.xml,那么所有操作都会被继承。

这基本上是我想要的——“继承”项目自定义操作的每个开发人员的自定义操作。响应:

应该是不实用...

并且工单被设置为 Resolved/WontFix。


所以,目前,这是我的下一个最好的事情:

NetBeans 允许运行/调试/配置文件以及所有自定义操作可以独立定义的不同执行配置文件。每个配置文件都存储在一个单独的nbactions-XXX.xml中,其中XXX是配置文件的名称。所以,我可以nbactions-*.xml输入.gitignore,但例外nbactions-GroupGlobals.xml.

这不太理想——使用我的自定义目标之一意味着右键单击项目,进入 Profiles 菜单,选择 GroupGlobals Profile,再次右键单击项目,进入自定义目标,运行我的目标,对 -再次单击项目,转到 Profiles,然后选择默认进程。

不过,我怀疑对于我的一些开发人员来说,它不会像命令行那么可怕。

不过,我仍在寻找更好的解决方案。

于 2012-09-25T16:47:35.223 回答
0

在 IntelliJ IDEA 中,您可以从列表中运行任何 ant 目标或 maven 目标(甚至为其分配按键)。我很确定 Netbeans 中有类似的东西。因此,您可以将其作为 ant/maven 配置来使用,而不是使用特定于 netbeans 的东西。当然,这些目标不应该需要任何参数/调整/等。您可以将本地设置分成一个单独的文件(包含在主 ant 脚本或 settings.xml 或 OS env 或其他文件中)。

于 2012-09-18T22:05:21.523 回答