我真的不鼓励使用 maven 本机插件,我在配置它时遇到了很多麻烦,而且我不知道它是否被维护,因为主页上说它最后一次发布于 2011-03-09。我为处理使用 maven 构建 C++ 库的问题所做的是使用 maven-exec 插件。我通过调用加载 msbuild 工具:
"C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\vcvars32.bat"
从命令行。之后,msbuild 将在您的范围内可用。
这些是我的 pom 文件的内容:
<plugin>
<artifactId>exec-maven-plugin</artifactId>
<configuration>
<executable>msbuild</executable>
<sourceRoot>${basedir}/Library/</sourceRoot>
</configuration>
<executions>
<execution>
<id>clean</id>
<phase>clean</phase>
<configuration>
<arguments>
<argument>${basedir}/Library/Library.vcxproj</argument>
<argument>/p:Configuration=Release</argument>
<argument>/p:Platform=x64</argument>
<argument>/t:Clean</argument>
</arguments>
</configuration>
<goals>
<goal>exec</goal>
</goals>
</execution>
<execution>
<id>build</id>
<phase>compile</phase>
<configuration>
<arguments>
<argument>${basedir}/Library/Library.vcxproj</argument>
<argument>/p:Configuration=Release</argument>
<argument>/p:Platform=x64</argument>
<argument>/t:Build</argument>
</arguments>
</configuration>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
</plugin>
这样,配置将使项目同时响应干净和编译目标。您可以更进一步,使用程序集插件来打包您的库并使其将库安装在本地存储库中,以便可以将其作为依赖项添加到其他项目中。