問題タブ [msbuild]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
msbuild - CruiseControl.net、msbuild、/ p:OutputPath、およびCCNetArtifactDirectory
現在、CruiseControl.netをセットアップしようとしています。これまでのところうまく機能していますが、MSBuildタスクに問題があります。
ドキュメントによると、CCNetArtifactDirectoryをMSBuildに渡します。しかし、どうすればそれを使用できますか?
私はこれを試しました:
しかし、それは機能しません。実際、次のエラーでサービスが強制終了されます。
ThoughtWorks.CruiseControl.Core.Config.Preprocessor.EvaluationException:不明なシンボルCCNetArtifactDirectoryへの参照
ドキュメントはかなりまばらで、google undは主に.slnプロジェクトファイルの変更を提供しています。これは、後でこのプロジェクトを手動でビルドできるようにするために避けたいものです/p:OutputPath
。
svn - SVN リビジョンを使用して CCNET のビルドにラベルを付ける
ソース管理として SVN を使用したサンプル プロジェクトで CCNET を使用しています。CCNET は、チェックインごとにビルドを作成するように構成されています。CCNET は、MSBuild を使用してソース コードをビルドします。
AssemblyInfo.cs
コンパイル時に最新のリビジョン番号を使用して生成したいと考えています。Subversion から最新のリビジョンを取得し、その値を CCNET で使用するにはどうすればよいですか?
編集: NAnt は使用していません。MSBuild のみを使用しています。
.net - nAnt は引き続きサポートされ、.net 3.5/VS2008 に適していますか?
私は自分のものを構築するために MSBuild を使用しています。Build Server のように CruiseControl.net を使いたい。
現在、CCNET は nAnt をよく参照していますが、プロジェクト構成と msbuild を通じて nant が実行できるほとんどのことを ccnet が実行できるように見えます。また、nAnt は、現在ほぼ 1 年前のベータ リリースで、少しサポートされていないようです。
要するに、私は実際には MSBuild に非常に満足しており (特に "公式" コンパイラのフロント エンドであるため)、nAnt には少し不快ですが、時期尚早に判断したくありません。
MSBuild よりも nAnt を使用する理由は何ですか? 特にccnetでは、機能の点でnantと少し重複しているようです(および自動ビルド関連のものを追加しています)
msbuild - CruiseControl.NETでのMSTestの使用
私たちは、NUnitとNAntでかなり長い間CruiseControlを使用してきました。最近のプロジェクトでは、これまでのところ十分なVisualStudioに付属のテストフレームワークを使用することにしました。
CruiseControlでソリューションを実行しようとしています。ついにビルド自体が機能するようになりました。ただし、カスタムビルドタスクとそれを実行するように設計されたコンポーネントを追加したにもかかわらず、CruiseControlインターフェイスに表示されるテストを取得できませんでした。誰かがこれを設定するための手順への決定的なリンクを持っていますか?
visual-studio - 自動リリース スクリプトと Visual Studio セットアップ プロジェクト
ここにいるほとんどの人は、完全に自動化されたビルドの重要性を理解していると思います。
問題は、私たちのプロジェクトの 1 つが統合された Visual Studio セットアップ プロジェクト (vdproj) を使用しており、最近 Visual Studio 2008 に移植されたことです。明らかに、すべてのマルチコアコンピューターでそれを行います(!!!)。したがって、.Net 2.0 および 2005 にロールバックするか、単に Visual Studio の展開を放棄するかを選択できますが、まず、セカンドオピニオンが必要です。
IDEを開いて何かをクリックする必要のない.vdprojを構築する別の自動化された方法を知っている人はいますか?
vdproj を捨てると言ったとき、私は WiX を念頭に置いていました。あなたはそれについて何か経験がありますか、良いこと、警告はありますか?
c# - ビルド中に sgen.exe が失敗する
Visual Studio プロジェクトの出力ディレクトリを変更した後、次のようなエラーでビルドに失敗し始めました。
出力ディレクトリを target/win_x32/release/results に変更しましたが、sgen のパスが更新されていないようです。プロジェクトにはsgenに渡されるパスへの参照がないように見えるので、修正方法がわかりません。回避策として、シリアライゼーション生成を無効にしましたが、根本的な問題を修正することをお勧めします。他の誰かがこれを見たことがありますか?
msbuild - nantからmsbuildに切り替える必要がありますか?
私は現在、nant、ccnet(クルーズコントロール)、svn、mbunitを使用しています。シェルアウトが簡単だったという理由だけで、msbuildを使用してslnビルドを実行します。
ビルドスクリプト全体をMSBuildに切り替えるメリットはありますか?テスト、watirスタイルのテスト、xcopyデプロイを実行できる必要があります。これは簡単ですか?
更新:nantからmsbuildに移行する原因となる魅力的な機能はありますか?
msbuild - MSBuild と MS Virtual Server および/または Hyper-V Server Virtualization を使用して、ビルド プロセスの一部として仮想マシンを作成するにはどうすればよいですか?
私がやりたいことは、アプリケーションのビルドの出力としてクリーンな仮想マシン イメージを作成することです。
したがって、新しい仮想マシンが作成されます (OS がインストールされ、いくつかの基本ソフトウェアがインストールされた状態で、テンプレートからでも問題ありません) --- 新しい Web サイトが IIS で作成され、Web アプリのビルド出力が次の場所にコピーされます。仮想マシンのハード ディスクと IIS が正しく構成されていれば、VM が起動して実行されます。
IIS ですべての管理アクションをスクリプト化する MSBuild タスクがあることは知っていますが、仮想マシンですべてのアクションをどのようにスクリプト化しますか? 具体的には、テンプレートから新しい仮想マシンを作成し、一意に名前を付け、起動し、構成するなど...
具体的には、ビルド プロセスの一部として VM スクリプトを正常に実装した人がいるかどうか疑問に思っていました。
更新: Hyper-V には、仮想マシンをスクリプト化する別のライブラリ/API のセットがあると思いますが、これで遊んだ人はいますか? そして、このようなことを実際に実践した経験のある人はいますか?
msbuild - CruiseControl.NET を介して ClickOnce アプリケーションを公開するにはどうすればよいですか?
開発サーバーに CruiseControl.NET バージョン 1.4 をセットアップしました。開発者がコードをチェックインするたびに、コンパイルが行われます。
これで、テスターにアプリケーションを提供できるようになりました。ClickOnce を使用してアプリケーションを配布したいと考えています。テスターがアプリケーションをテストするときに、最新のビルドを持っているという考えに基づいています。
CruiseControl.NET でそれを実現する方法が見つかりません。MSBUILD を使用してビルドを実行しています。
c# - ビルド後の反復タスクを自動化するにはどうすればよいですか?
他のいくつかのプロジェクトを含む ASP.NET Web サイト ソリューションを実行しています。MSBuild プロジェクトでこれが可能であることは知っていましたが、それが最善の方法ですか? それらは簡単に作成できますか? nAnt、CruiseControl.NET、またはその他のソリューションはどれが優れていますか?
( Web Deployment Projectsを使用して) サイトをビルドするとき、ビルドの一部を自動化して、プロジェクトから特定のフォルダーを Release フォルダーにコピーしないようにすることはできますか? たとえば、ローカル検索インデックス、画像、およびフォルダーのその他のコンテンツ部分を含むフォルダーがありますが、プロジェクトを展開するときにそれらを必要とせず、アップロードすることもありません。
また、ビルド番号とバージョン番号を自動的にインクリメントするこのタイプのソリューションも検討しています。