.net 如何使用NPanday生成和打包PDB文件?

.net 如何使用NPanday生成和打包PDB文件?,.net,maven,maven-plugin,.net,Maven,Maven Plugin,我和我的同事正试图使用Maven来构建我们的C#.NET Web服务项目。经过一些研究,NPanday似乎是最好的选择。我们已经成功地让NPanday与NUnit和本地Nexus工件库合作 但是现在我们想知道是否有一种方法可以创建和打包.pdb文件以进行调试(特别是因为我们有一些依赖于其他内部项目的项目)。我们将dotnet库打包类型与NPanday一起使用,但它似乎没有这样做的方法 根据,定制的lifecycle maven插件似乎是我们创建dotnet符号或dotnet归档包所需要的。但我不

我和我的同事正试图使用Maven来构建我们的C#.NET Web服务项目。经过一些研究,NPanday似乎是最好的选择。我们已经成功地让NPanday与NUnit和本地Nexus工件库合作

但是现在我们想知道是否有一种方法可以创建和打包.pdb文件以进行调试(特别是因为我们有一些依赖于其他内部项目的项目)。我们将dotnet库打包类型与NPanday一起使用,但它似乎没有这样做的方法

根据,定制的lifecycle maven插件似乎是我们创建dotnet符号或dotnet归档包所需要的。但我不知道如何使用它

我的猜测是,使用定制的lifecycle maven插件将需要添加我们自己的编译和打包(zipping)目标,类似于这里所描述的:但这样做似乎消除了使用NPanday的maven编译插件的许多简单性

有人能帮我解决这个问题吗?谢谢


免责声明:我和我的同事对Maven都是新手,我们正在努力了解如何最好地将它应用到我们的项目中。另外,为了回答这个问题,请假设Maven的使用是不可协商的。

好吧,既然没有人回答,我将根据我们在工作中学到的知识回答我自己的问题。我们的解决方案是:完全停止使用NPanday。它不能轻松地调试构建

除了这个特殊的问题,我们还发现了NPanday的许多其他问题(或者至少不那么令人满意)。它使用C#编译器(csc)而不是MSBuild,因此我们无法轻松地将EDMX用于数据库。此外,我们还必须列出要包含在编译中的每个文件

我们已经从Sonar迁移到使用
maven dotnet插件
(groupId:
org.codehaus.Sonar plugins.dotnet
)。我们在定义自己的自定义Maven执行方面也取得了一些成功

太遗憾了,NPanday让人失望了。它有一份很棒的简历,但最后我们不得不解雇它,因为它无法完成我们需要的工作。也许有一天它会改进到可以使用的程度


我认为我们可能已经能够使用NPanday的
定制生命周期maven插件
进行调试构建,但在这一点上,NPanday的帮助是值得怀疑的。当您创建自定义执行时,您也可以避免NPanday带来的痛苦。

听到这个消息很遗憾。我真的对让NPanday工作很感兴趣。我是作为一名提交人(2011年10月)加入的,我的第一个贡献之一是定制的lifecycle maven插件,因为我还必须完成一些事情,而NPanday在这方面遇到了障碍。好吧,希望你和NPanday团队能够改进产品。一旦我们的担忧得到解决,那么我们很乐意重新审视NPanday的使用。我建议至少添加一个MSBuild选项(以处理EDMX,同时消除在项目级别拥有子pom文件的需要)。哦,对您来说,这是对项目的贡献。如果我有时间(或者如果我的雇主愿意),我会愿意捐款,而不是抱怨。但在这一点上,我们只是一个消费者。多亏了Viktor Stefoglo的贡献,我们现在支持1.5.0-SNAPSHOT上的PDB。PDB将作为单独的工件进行部署,但在系统的大部分(测试、应用程序打包、复制依赖项,++)中遵循DLL。请参阅