問題タブ [build-process]
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.
git - 分散バージョン管理を使用する場合のビルド シーケンス
現在、バージョン管理には Perforce を使用しています。ビルドを参照するために使用できる厳密に増加する変更番号の便利な機能があります。たとえば、「ビルドが少なくとも 44902 の場合、バグ修正を取得できます」。
分散システム (おそらく git) の使用に切り替えて、ブランチや在宅勤務を容易にしたいと考えています。(どちらもPerforceで完全に可能ですが、gitワークフローにはいくつかの利点があります。)したがって、「トリビュタリ開発」は配布され、共通のリビジョンシーケンスを参照しませんが、すべての変更が行われるマスターgitリポジトリを維持します.ビルドが作成される前にフィードする必要があります。
厳密に増加するビルド ID を保持する最良の方法は何ですか? 私が考えることができる最も簡単な方法は、マスターリポジトリが更新されるたびに起動し、新しいツリーオブジェクト(またはコミットオブジェクト?のハッシュ)を登録する、ある種のポストコミットフックを用意することです。 git) を、ID を配布する集中型データベースと組み合わせて使用します。(「データベース」と言いますが、おそらく git タグを使用して、次に利用可能なタグ番号か何かを探すだけです。つまり、「データベース」は実際には .git/refs/tags/build-id/ になります。 )
これは実行可能ですが、これを達成するためのより簡単な、または既に実装されている、または標準/「ベストプラクティス」の方法があるかどうか疑問に思っています。
visual-studio - VS 2008 ビルド後のイベントでシステム環境変数を使用するには?
外部バッチ ファイルを作成して実行することなく、プロジェクトのビルド後のイベントでシステム環境変数を使用するにはどうすればよいですか? LHDLLDEPLOY
という名前の新しい環境変数を作成し、ビルド後のイベント テキスト ボックスに次のように書き込むのと同じくらい簡単だと思いました。
...しかし、残念ながら、違います。ビルド出力は、ファイルを " %LHDLLDEPLOY%
" フォルダに (" 1 file(s) copied
" として 2 回) 書き込んだことを示していますが、ファイルは同一パスになく、" LHDLLDEPLOY
"という名前の新しいフォルダはありません。
彼らは実際にどこに行ったのですか?どうすればこれを正しく行うことができますか?
(更新:ザビエルはそれを釘付けにしました。また、$(LHDLLDEPLOY)
マシンを再起動して環境変数を更新した後、彼の変数形式は機能しました。)
(更新 2: マシンを再起動する必要がなかったことが判明しました。a) 環境変数リスト ウィンドウを閉じ、b) Visual Studio を閉じて再起動したことを確認する必要がありました。)
visual-studio - Visual Studio の bin\debug フォルダー内の PDB ファイル
すべてが同じ名前空間にあるわけではなく、複数のプロジェクトで構成される Visual Studio (2008) ソリューションがあります。ソリューションをビルドすると、最上位プロジェクトTopProjectで使用されるすべての DLL ファイルがTopProject\bin\debugフォルダーにコピーされます。ただし、対応する .pdb ファイルは、他の一部のプロジェクトに対してのみコピーされます。これは、たとえばNDependを使用する場合など、苦痛です。
Visual Studio はどの .pdb ファイルを上位レベルの bin\debug フォルダーにコピーするかをどのように決定しますか? Visual Studioに他のものもコピーさせるにはどうすればよいですか?
参照は次のとおりです。すべての DLL ファイルは、PDB ファイルなしで中央の場所にコピーされます。TopProject には、これらのコピーされた DLL ファイルへの参照しかありません。ただし、DLL ファイル自体は明らかに PDB ファイルの場所を認識しており、(ほとんどのファイルは)debug
フォルダーに正しくコピーされます。
visual-studio - Visual Studios Link.exe エラー:「余分なオペランド」
ビルド プロセスでは、リンクに Visual Studios 2003 link.exe を使用します。1 台のマシンで、次のエラーが表示されます。
他のマシンと同じバージョンのビジュアル スタジオを使用しているようです。以前にこの問題に遭遇した人はいますか?
c# - C# で一連のプロセスを実行し、その環境設定を維持するにはどうすればよいですか?
ビルド プロセスで一連のステップを実行し、ターゲット アプリケーションをビルドする自動ビルダーを開発しています。以前は、一連の環境変数を設定するバッチ ファイルを使用したり、環境変数を設定して最終的に「make」を実行するツールを呼び出したりしていました。
これらのコマンドを実行するのに最適な「プロセス」クラスを使用していますが、残念ながら、環境に変更を加えるたびに(PATHに何かを追加するなど)、「プロセス」が完了するとこれらの変数が失われます。次の「プロセス」がインスタンス化され、「呼び出し元」アプリ (私の exe) から環境を継承します。これは、最後のコマンドによるすべての環境設定が失われることを意味します。この状況をどのように処理しますか?C# 内で一連のバッチ ファイルのようなコマンドを実行し、設定した環境を維持するためのより良い方法はありますか?
残念ながら、古い学校の生徒たちは、nant/ant はオプションではないと宣言しているので、「Nant を使用してみませんか?」と注意してください。私が探している答えではありません。
ありがとう。
ruby - レイヴン使ったことある人いますか?
このビルドツールについてどう思いますか? maven2からravenへの移行を考えているのですが(ポンポンがどんどん大きくなっています)、まずは意見をお聞きしたいです。
ありがとう!
@アンドレ:
書いていただきありがとうございますが、私は実際にレイヴンを使った実際の経験を探していました. とにかく、誰も書いていないこと自体が指標です(使っている人は少ないようです)
msbuild - コマンド ラインから DevEnv.exe を実行する場合と比べて、MSBuild または NAnt を使用する場合の利点
MSBuild (または NAnt) のようなツールを使用してプロジェクトのコレクションをビルドすることと、コマンド ラインから DevEnv.exe を実行することの利点を説明できる人はいますか?
過去に一緒に働いていた同僚は、(少なくとも古いバージョンの Visual Studio では) DevEnv.exe を使用すると、他の手法よりもはるかに遅いと説明していましたが、その証拠を読んでいないか、それが現在2005 年以降、Visual Studio は内部で MSBuild を使用しています。
MSBuild を使用する利点の 1 つは、ビルド マシンに Visual Studio をインストールしなくてもプロジェクトをビルドできることを知っていますが、他に利点があるかどうかはわかりませんでした。
java - Java パッケージ間の依存関係を制限する
Javaビルドシステムでパッケージの依存関係に制限を課す可能性は何ですか? たとえば、クラスはパッケージmyapp.server.bl.Customer
を参照できません。myapp.client.ui.customlayout
Ant ベースまたは IDE 固有のソリューションに興味があります。
(カスタム) パッケージの依存関係規則に違反し、ビルドが中止されたことを示すエラー メッセージをビルドで取得したいと考えています。また、Ant スクリプトや IDE プロジェクト ファイルの外部で、できればテキスト ファイルで依存関係をリストに維持したいと考えています。
(私はMavenを知りませんが、モジュールの依存関係管理のサポートが向上していることをここで読みました)
visual-studio - デバッグ ビルドのみの Visual Studio ビルド後のイベントを実行する方法
ビルド後のイベントを 1 つのタイプのビルドに対してのみ実行するように制限するにはどうすればよいですか?
イベントを使用して DLL ファイルをローカルの IIS 仮想ディレクトリにコピーしていますが、リリース モードのビルド サーバーでこれを実行したくありません。
c# - コンパイルの前に C# コードを変更する MSBuild カスタム タスクを作成する
csc.exe によってコンパイルされる前に .cs ファイルを変更するカスタム MSBuild タスクを作成したいと考えています (ただし、もちろん、その場で変更するわけではありません。実際のソース ファイルには触れたくありません)。PostSharp およびその他の .NET 用 AOP フレームワークを認識していますが、これらはこの特定のプロジェクトのオプションではありません。さらに、これを行う方法を学びたいと思っています。
これを機能させるには、正確に何をしなければなりませんか?
ありがとうリチャード