共享nbactions.xml或将其集成到Maven中

共享nbactions.xml或将其集成到Maven中,maven,netbeans,Maven,Netbeans,我在NetBeans中有一个Maven项目,它由多个子项目(每个子项目都有自己的pom.xml)和一个共享父项目pom.xml)组成。 一些子项目是由nbactions.xml配置的,这样我就可以运行和调试它们(使用NetBeans的漂亮的run和debug按钮)。 由于nbactions.xml仅当它位于每个可执行子项目的根目录下时才被检测到,因此我必须复制它 有没有办法避免将nbactions.xml复制到我要执行的每个子项目中?是否有可能像使用nb configuration.xml选项(

我在NetBeans中有一个Maven项目,它由多个子项目(每个子项目都有自己的
pom.xml
)和一个共享父项目
pom.xml
)组成。 一些子项目是由
nbactions.xml
配置的,这样我就可以运行和调试它们(使用NetBeans的漂亮的run和debug按钮)。 由于
nbactions.xml
仅当它位于每个可执行子项目的根目录下时才被检测到,因此我必须复制它

有没有办法避免将
nbactions.xml
复制到我要执行的每个子项目中?是否有可能像使用
nb configuration.xml
选项(例如
netbeans.hint.license
netbeans.hint.jdkPlatform
)一样,将
nbactions.xml
包含到父
pom.xml

这是我的
nbactions.xml


调试
罐子
清洁的
包裹
org.openjfx:javafxmaven插件:0.0.3:run@debug
真的
跑
罐子
清洁的
包裹
org.openjfx:javafxmaven插件:0.0.3:run

您可以在工具->选项->Maven->执行->编辑全局自定义目标定义中配置自定义动作映射器。但是手动添加可能会让人厌烦

或者,您可以将
nbactions.xml
复制并粘贴到NetBeansUserDir\config\Projects\org netbeans modules maven\目录中。您可以在帮助->关于中找到NetBeansUserDir的位置。对于11.0 LTS,它看起来像:

Runtime: Java(TM) SE Runtime Environment 1.8.0_231-b11
System: Windows 10 version 10.0 running on amd64; Cp1251; ru_RU (nb)
User directory: C:\Users\User\AppData\Roaming\NetBeans\11.0
Cache directory: C:\Users\User\AppData\Local\NetBeans\Cache\11.0
完整路径为:

C:\Users\User\AppData\Roaming\NetBeans\11.0\config\Projects\org-netbeans-modules-maven\
目录中的
nbactions.xml
适用于所有项目,最好定义自定义映射。否则,如果不将自定义前缀添加到nbactions.xml中的操作,则该文件将覆盖所有项目的运行和调试操作

如果您添加自定义-则它们将在“全局定义”对话框中可见,您可以将这些操作映射到某些工具栏

例如,更改了nbactions.xml

<?xml version="1.0" encoding="UTF-8"?>
<actions>
    <action>
        <actionName>CUSTOM-debug</actionName>
        <packagings>
            <packaging>jar</packaging>
        </packagings>
        <goals>
            <goal>clean</goal>
            <goal>package</goal>
            <goal>org.openjfx:javafx-maven-plugin:0.0.3:run@debug</goal>
        </goals>
        <properties>
            <jpda.listen>true</jpda.listen>
        </properties>
    </action>
    <action>
        <actionName>CUSTOM-run</actionName>
        <packagings>
            <packaging>jar</packaging>
        </packagings>
        <goals>
            <goal>clean</goal>
            <goal>package</goal>
            <goal>org.openjfx:javafx-maven-plugin:0.0.3:run</goal>
        </goals>
    </action>
</actions>


您可以在工具->选项->Maven->执行->编辑全局自定义目标定义中配置自定义动作映射器。但是手动添加可能会让人厌烦

或者,您可以将
nbactions.xml
复制并粘贴到NetBeansUserDir\config\Projects\org netbeans modules maven\目录中。您可以在帮助->关于中找到NetBeansUserDir的位置。对于11.0 LTS,它看起来像:

Runtime: Java(TM) SE Runtime Environment 1.8.0_231-b11
System: Windows 10 version 10.0 running on amd64; Cp1251; ru_RU (nb)
User directory: C:\Users\User\AppData\Roaming\NetBeans\11.0
Cache directory: C:\Users\User\AppData\Local\NetBeans\Cache\11.0
完整路径为:

C:\Users\User\AppData\Roaming\NetBeans\11.0\config\Projects\org-netbeans-modules-maven\
目录中的
nbactions.xml
适用于所有项目,最好定义自定义映射。否则,如果不将自定义前缀添加到nbactions.xml中的操作,则该文件将覆盖所有项目的运行和调试操作

如果您添加自定义-则它们将在“全局定义”对话框中可见,您可以将这些操作映射到某些工具栏

例如,更改了nbactions.xml

<?xml version="1.0" encoding="UTF-8"?>
<actions>
    <action>
        <actionName>CUSTOM-debug</actionName>
        <packagings>
            <packaging>jar</packaging>
        </packagings>
        <goals>
            <goal>clean</goal>
            <goal>package</goal>
            <goal>org.openjfx:javafx-maven-plugin:0.0.3:run@debug</goal>
        </goals>
        <properties>
            <jpda.listen>true</jpda.listen>
        </properties>
    </action>
    <action>
        <actionName>CUSTOM-run</actionName>
        <packagings>
            <packaging>jar</packaging>
        </packagings>
        <goals>
            <goal>clean</goal>
            <goal>package</goal>
            <goal>org.openjfx:javafx-maven-plugin:0.0.3:run</goal>
        </goals>
    </action>
</actions>


我喜欢这些想法,但在这种情况下,我无法通过Git分享,对吗?嗯,我可以在NetBeansUserDir中创建一个符号链接,指向
nbactions.xml
。是的,我认为这比将文件复制到用户目录要好。因此,在父项目中,可以保留nbactions.xml的一个副本并使用指向它的链接。在任何情况下,它看起来更像是一个解决方案,而不是一个合适的解决方案,但应该会起作用。我喜欢这些想法,但在这种情况下,我不能通过Git共享它,对吗?嗯,我可以在NetBeansUserDir中创建一个符号链接,指向
nbactions.xml
。是的,我认为这比将文件复制到用户目录要好。因此,在父项目中,可以保留nbactions.xml的一个副本并使用指向它的链接。在任何情况下,它看起来更像是一个解决方案,而不是一个合适的解决方案,但应该是可行的。对我来说,关键是以下目标:
org.openjfx:javafxmaven插件:0.0.3:run
对我来说,关键是以下目标:
org.openjfx:javafxmaven插件:0.0.3:run