标签: nant

使用 NAnt 和 Ivy 构建 VB6 项目

我正在使用 Subversion、CruiseControl、NAnt 和 Ivy 为 .Net 和 VB6 应用程序开发持续集成系统。

.Net 方面的问题不是太大,但我需要一些有关 VB6 方面的指导,更多来自“DLL 地狱”方面的指导!

我当前的设置是为我的 VB6 系统获取所有依赖文件,正如预期的那样,并在 ok 内构建各种项目。但是...它使用的是已经在我的 PC 上注册的 DLL,而不是我的 Lib 文件夹中的那些,这是我从 Ivy 解析我的依赖项的地方。

我可以通过在 Ivy 解决它们后注册下载的 DLL 来解决这个问题,这意味着项目文件可以指向本地 Lib 文件夹;但我希望我的 NAnt 脚本自动执行此操作,然后在构建过程完成后自动取消注册它们,以便下一个项目可以依次执行相同的操作。

我想我需要帮助的是让 Ivy 给我一份项目依赖项列表的能力......

例如,如果我正在构建依赖于项目 A、B 和 C 的项目 X,那么如果我可以向 Ivy 发出一个命令来返回诸如 A、B、C 之类的列表,那么我可以将它们传递给另一个目标依次注册/注销它们的过程...

这有意义吗?这可能吗,我是否以正确的方式看待这个问题?或者,还有更好的方法?

我很抱歉,我已经在房子周围解释了这一点......!

svn vb6 nant continuous-integration ivy

2
推荐指数
1
解决办法
2029
查看次数

在NAnt中从<solution>转到<exec program = msbuild>

我已经将我的应用程序从.NET 1.1转换为.NET 3.5,不幸的是NAnt的标签不支持.NET 3.5.所以我试图使用标签直接启动msbuild.

这是我对.NET 1.1的看法:

<solution solutionfile="MyApp.sln" 
        configuration="ServerDebug" outputdir="MyApp\bin\ServerDebug">

             <assemblyfolders>
                   <include name="Dependencies\Libs\bin\ServerDebug"/>
             </assemblyfolders>
</solution>
Run Code Online (Sandbox Code Playgroud)

我把它改成了

<exec program="msbuild">
    <arg value="MyApp.sln /p:Configuration=ServerDebug;OutDir=bin\ServerDebug\" />
</exec>
Run Code Online (Sandbox Code Playgroud)

所以一切都运行正常,除了我无法弄清楚如何复制真正方便的标签,这给编译器一个关于在哪里寻找依赖的提示.

我将什么传递给msbuild来复制功能?

.net msbuild nant projects-and-solutions

2
推荐指数
1
解决办法
4647
查看次数

什么是.NET替代品的实体NMaven或构建服务器?

Maven历史悠久,在Java世界得到很好的支持.NMaven已经获得了一个不那么成功的开端,并且从未在C#/ .NET世界中变得如此受欢迎,因为它的大表兄在Java世界中.该项目似乎已接近死亡(ish),但也许我错了.

是否存在替代品,优选使用NAnt,通常用于支持NMaven并具有与Maven类似的特性?我正在寻找的是一个很好的.NET开源自动构建服务器,如果存在的话.或者我应该继续使用NMaven吗?

.net nant build-server maven

2
推荐指数
1
解决办法
1645
查看次数

NAnt .build文件是否区分大小写?

用于项目,目标,任务,功能......的关键字在NAnt构建文件中是否区分大小写?

nant case-sensitive

2
推荐指数
1
解决办法
571
查看次数

使用nant xmlpoke更改nhibernate配置

如何使用nant从nhibernate.config文件更改连接字符串

问题是所有的例子都是关于改变属性值,但是nhibernate有内部文本

EQ:

<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
 <session-factory>
    <property name="connection.connection_string">Data Source.\server;Database=UnitTestDb;UID=user;pwd=pass;</property>
    <property name="dialect">NHibernate.Dialect.MsSql2008Dialect</property>
    <property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
    <property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>
    <property name="show_sql">true</property>
    <property name="connection.release_mode">auto</property>
    <property name="adonet.batch_size">500</property>
    ....
Run Code Online (Sandbox Code Playgroud)

我需要更改属性connection.connection_string

<xmlpoke        file="${nhibernate.file}"
        xpath="/hibernate-configuration/session-factory/add[@key='connection.connection_string']/@value"
        value="${connection.string}">
</xmlpoke>
Run Code Online (Sandbox Code Playgroud)

这在这种情况下不起作用.

谢谢

nant nhibernate xmlpoke

2
推荐指数
1
解决办法
1690
查看次数

CruiseControl .net(或任何CI服务器)可以做什么,MSBuild或NAnt不能做什么?

我问这个问题,因为我发现社区对各种构建引擎(如MSBuild和NAnt)的贡献确实包括了促进CI服务器的所有任务,比如从源代码控制获取版本,清理文件夹,更改构建号,发送电子邮件,等等...

是否只是因为它"监听"源控件存储库中发生的更改?还有什么我想念的?

msbuild nant continuous-integration

2
推荐指数
1
解决办法
276
查看次数

读取字符串中的分号时,在nant脚本中使用xmlpoke时出现问题

我有一个试图在我的web.config中更改URL值的nant脚本但是Nant一直在抛出这个错误:

'=' is an unexpected token. The expected token is ';'. Line 1, position 80.
Run Code Online (Sandbox Code Playgroud)

我将其追溯到nant脚本的URL中的分号.我首先在URL中使用分号的原因是因为web.config不喜欢&符号(&).所以我不得不替换和&amp;.这是我的web.config值:

<appSettings>
    <add key="myUrl" value="http://www.google.com/whatever?id=myId&amp;fullScreen=1"/>
</appSettings>
Run Code Online (Sandbox Code Playgroud)

我能够在web.config中xmlpo所有其他"添加键"但是这个,所以它不是一个xpath问题.这是nant脚本:

<property name="myUrl" value="http://www.google.com/whatever?id=123456&amp;fullScreen=2"/>

<xmlpoke 
   file="${config.file}"
   xpath="/configuration/appSettings/add[@key = 'myUrl']/@value"
   value="${myUrl}">    
</xmlpoke>
Run Code Online (Sandbox Code Playgroud)

所以问题不在于web.config中的分号,而是在nant脚本中使用分号.我想我需要以某种方式逃避nant脚本中的分号.任何人都知道如何做到这一点或其他什么来让它工作?

asp.net ant nant web-config xmlpoke

2
推荐指数
1
解决办法
1098
查看次数

Nant foreach包括排除过滤器未按预期工作

我希望从nant(0.91)目标中排除特定文件并处理剩余部分.
这是代码片段,显示我想要包含所有.js文件,但不包括foo.foo不被排除在外.我尝试在包含之前放置排除但是相同的结果.

<foreach item="File" in="${built.web.directory}\Content\js" property="filename">
    <in>
        <items basedir="${built.web.directory}\Content\js">
            <include name="/**/*.js" />
            <exclude name="**/foo.1.2.js" />
            <exclude name="foo.1.2.js" />
        </items>
    </in>
    <do>
        <echo message="Compressing ${filename}" />
        <exec program="${packer.exe}" commandline="-o ${built.web.directory}\Content\js\${path::get-file-name(filename)} -m jsmin ${filename}" />
    </do>
</foreach>
Run Code Online (Sandbox Code Playgroud)

nant

2
推荐指数
1
解决办法
2397
查看次数

如何递归删除文件夹?

使用NAnt脚本,我正在寻找解决方案来删除.svn给定文件夹中递归命名的所有文件夹.

使用delete任务只删除一个文件/文件夹,但不能递归删除.

如果你知道如何,请帮忙.

nant recursion

1
推荐指数
1
解决办法
599
查看次数

NAnt中的msbuild任务不会在Prebuild中编译WiX项目

此WiX安装项目在Visual Studio中编译没有问题.

但是,使用msbuild任务在NAnt中运行它会显示以下错误.

热预建事件:

"$(SolutionDir)\App_Tools\WiX Toolset v3.8\bin\heat.exe" dir "$(SolutionDir)\App_Shell \bin\$(ConfigurationName)" -dr "AppDirectory" -cg "AppComponentGroup" -t   "$(ProjectDir)Filter.xslt" -gg -g1 -sf -srd -sreg -var "var.AppAppPath" -out   "$(ProjectDir)\App_HarvestedHeatFile.wxs"  
Run Code Online (Sandbox Code Playgroud)

msbuild任务:

<msbuild project="App_Installers\App.Setup\App.Setup.wixproj">
        <property name="Configuration" value="Release"/>
        <property name="target" value="Rebuild"/>
        <property name="verbosity" value="Normal"/>
</msbuild>
Run Code Online (Sandbox Code Playgroud)

错误信息Prebuild:

  [msbuild] Build started 03.02.2014 15:38:35.
  [msbuild] Project "E:\Projects\Company\App\Development\trunk\src\App_Inst
allers\App.Setup\App.Setup.wixproj" on node 1 (default targets).
  [msbuild] AssignCultures:
  [msbuild]   Culture: en-US
  [msbuild]   Culture: de-DE
  [msbuild] PreBuildEvent:
  [msbuild]   "*Undefined if not building a solution or within Visual Studio*\App_Tools\WiX Toolset v3.8\bin\heat.exe" dir "*Undefined if not …
Run Code Online (Sandbox Code Playgroud)

msbuild nant wix nantcontrib visual-studio

1
推荐指数
1
解决办法
1429
查看次数