我如何在maven下编译c#解决方案
本文关键字:编译 解决方案 maven | 更新日期: 2023-09-27 17:50:16
我们有一个用Java和c#两种语言实现的应用程序。Java应用程序在构建和发布过程中使用maven,现在我需要将c#的构建也集成到maven中。它是使用Visual Studio 2010实现的。有人知道怎么做吗?什么是最好的插件,现在我可以使用。非常感谢!
更新:
到目前为止,我找到了以下4个选项。有人成功地使用过这些方法吗?此外,我最终需要将构建/发布过程移植到Linux,并可能使用Mono在maven中编译。如能提供任何信息,不胜感激。
NPandayhttp://incubator.apache.org/npanday/docs/1.2/guide/maven/project-types.html
丛http://maven.apache.org/plugins/maven-compiler-plugin/non-javac-compilers.htmlhttp://snapshots.repository.codehaus.org/org/codehaus/plexus/plexus-compiler-csharp/1.6-SNAPSHOT/
Maven Dotnet插件http://maven-dotnet-plugin.appspot.com/
教程:http://docs.codehaus.org/display/MAVENUSER/Using + Maven + +管理+ . net +项目
我在c#/c++堆栈中使用Maven。对于maven,"如果它可以通过命令行完成,那么它可以在maven中完成"的一般规则成立,所以我们最终有很多。bat,。exe和powershell"胶水"将所有的部分"粘合"在一起。
也许通过maven管理c#编译的最好方法是创建一个组件,以powershell脚本或.bat文件的形式提供必要的机制。然后,您可以将其作为maven插件发布,或者简单地让所有下游组件向"编译组件"添加依赖项。语法有点棘手,但在一天结束时,你只是调用csc.exe或类似的东西。我强烈建议坚持使用maven的基本步骤——处理资源、编译、测试、部署、发布——以及它们的含义。这将减少c#和Java代码以及构建过程之间的"进程噪声",因为mvn compile(例如)的含义在所有组件之间在概念上保持一致。您很可能最终生成.zip文件作为工件,而不是.jar文件,然后将解压缩作为复制依赖步骤的一部分。
当推出时,预计c#人员会有很多困惑。对于世界上99%的c#/c++开发人员来说,Maven是完全陌生的,它的过程与传统的MSBuild/TFSBuild/ANT方法完全不同,这导致了很多困惑。
希望这对你有帮助!