Maven:如何管理特定于平台的文件,如startscripts(不是库)

Seb*_* J. 1 maven-2

我有一个由三个模块组成的java项目

  • 项目的共同
  • 项目一
  • 项目-B

项目a和b使用-common作为依赖项.

我使用一个简单的程序集配置将project-a,project-b和所有依赖库(spring等)放在一个归档中.

我还想为不同的平台(windows32,windows64,linux32,linux64和macosx)提供启动脚本.例如,我将使用windows winrun4j和sh-scripts for linux.

管理这些文件的最佳方法是什么(因为它们不像本机库那样需要任何编译等)?

目前,我将每个项目的起始文件放在其/ main/resources/bin文件夹中,导致程序集的所有起始文件都是针对alle平台的.

是否有一些聪明的原因,为什么要将这些起始文件移动到专用模块中并管理它们以便能够构建"平台特定"组件,包括仅包含给定平台的起始文件?

Col*_*ert 5

您可以使用配置文件激活和OS检测:

<profiles>
    <profile>
        <activation>
            <os>
                <family>windows</family>
                <arch>x86</arch>
            </os>
        </activation>
        ....
    </profile>
</profiles>
Run Code Online (Sandbox Code Playgroud)

资源:

在同一主题上: