2008-08-17 14 views
2

私は.net 1.0フレームワークを対象とし、C#とVisual Basicで書かれたWebアプリケーションの開発を引き継いできました。NAntにVB.Net用の自動ビルドファイルを作成するにはどうすればよいですか?

私は、まずビルドプロセスを改善する必要があると判断しました。私はC#プロジェクト用のビルドファイルを作成しましたが、Visual Basicのビルドファイルを作成する際に問題が発生しています。

確かに私はVBを個人的には知っていませんが、ビルドファイル内のすべてのインポートと参照をハードコードする必要があるようです...何かをするための最良の方法はありません...どんなたとえば

:私はビルドファイルで名前空間のシステムが含まれていない場合、私は、一般的な未知のタイプのいくつかのエラーなどを取得します:のGuid

は、NAntのは、通常、VBのコードのためにこれを必要としないか、VBのコードを実行していますNAnt-freindlyリファクタリングが必要ですか?

誰にもVB NAntのヒントはありますか?

答えて

1

あなたはVBまたはVB.Netについて話しているのですか?
いずれにしても、Nant Contribをご覧ください。彼らには解決策があるかもしれない。

1

ビルドするにはmsbuildを呼び出していますか?または、ビルドするためにVS.NET IDE exeを呼び出していますか? CC.NETとNAntを使用したc#/ VB.NETのミックスに問題はなく、ビルドファイル内で参照されているアセンブリを指定する必要はありません。

私たちがやっていることは、ビルドするプロジェクトを含むソリューションをビルドするためにIDE exeを使用することです。

1

言語固有のコンパイラを使用することをお勧めします。また、NAntを使用してこれを行うこともできます。

まず、使用する言語に関係なくプロジェクトをコンパイルし、依存関係を処理するため、MSBuildを使用するターゲットから開始します。それはあなたがハードコードそれらの中には必要がないことを意味

例:

<target name="WinBuild"> 
    <exec program="msbuild.exe" 
     basedir="${DotNetPath}" 
     workingdir="${SolutionPath}" 
     commandline="MySolution.sln 
        /nologo /verbosity:normal /noconsolelogger 
        /p:Configuration=Debug /target:Rebuild" /> 
</target> 

私はあなたが釘付けすることを持ったらと思います - あなたはNAntのは、ネイティブにコンパイルするために取得しようとしている多くの時間を過ごすことができ、。しかし、私の意見では、これは一度オフになっているように見えるので、私はこのプロジェクトで使うだろうか?

乾杯、

ロブG

1

を役に立てば幸い私はNAntのと同じような経験およびVisual Studioで開発されたVB.NETのプロジェクトのためのVBCコンパイラを持っていました。私の解決策は、Visual Studioのプロジェクトレベルで名前空間をインポートするのを避けることです(既定で発生します)。クラス/ファイルレベルで明示的なImportsステートメントを使用します。 C#プロジェクトはデフォルトでこのように動作します(プロジェクトレベルの名前空間のインポートはありません)。ファイルを見るときに明示的な名前空間ディレクティブによって提供される追加情報が気に入っています。

興味深いことに、VB.NETとC#VSプロジェクトはその点で非常に異なっています。

+0

私はこれを知らなかった、ありがとう! – mmattax

関連する問題