2

同じ静的ファイル (css、js、images) を使用する Web アプリケーションをいくつか作成しました。バージョン管理に svn を使用する場合、外部リポジトリ (svn: externals) を使用して現在のプロジェクトにファイルを追加します。例えば:

- Project_1 
---- Webapp 
-------- Static (external to static's repo) 
- Project_2 
---- Webapp 
-------- Static (external to static's repo)

/static/ ... のようなリンクを追加することで、Web ページで簡単に使用できます。

しかし今、私たちの会社はperforceに移行しました。現在の構造をどのようにサポートできますか?

これらのファイルをjarとしてパックして依存関係として使用すると思いますが、私のエディター(アイデア)は、この依存関係がjsスクリプトとスタイルであることを認識していません。また、マイナーな変更を作成するときに、jar ファイルを再パッケージ化して展開する必要があります。

Mavenを正しく使用するには?

4

3 に答える 3

3

Perforce は、クライアント仕様の一部として、デポからハード ドライブへの複数のマッピングの定義をサポートしています。たとえば、次のように設定できます。

Client Name: Sample_Maven
Client Root: c:\inetpub\wwwroot

//depot/Project_1/Webapp/... //Sample_Maven/Project_1/...
//depot/Project_2/Webapp/... //Sample_Maven/Project_2/...
//depot/Shared/static/... //Sample_Maven/static/...
... any other folder mappings you need to bring in and sync ...

Perforce は、共有静的フォルダーの状況の複数のマッピングを単独で処理することはできません。必要な動作を得るには、ファイル システムでジャンクション/シンボリック リンクを使用する必要があります。ただし、Perforce によって実際に管理されるのは共有静的フォルダーの 1 つだけであることを確認してください。変更を認識せずにリソースがその下から変更されると、少し不機嫌になる可能性があります。

実際には、プロジェクトごとに 1 つのワークスペース/クライアント仕様 (proj1 用に 1 つ、proj2 用に 1 つ) を持ち、それぞれが共有静的フォルダーへの独自のマッピングを持つ (可能であれば) ほうがよいでしょう。物事を適切に構築し、maven を使用して各「プロジェクト」をビルドするだけで、物事はよりスムーズに進みます。

于 2010-04-23T14:51:56.663 に答える
2

Maven ベースのソリューションの場合、WAR Overlaysを使用できます。複数の Web アプリケーション間で共通のリソースを共有することが、まさにオーバーレイの目的です。

于 2010-04-23T14:43:26.210 に答える
0

どちらもオーバーレイと呼ばれるいくつかの選択肢があるようです。

a) @Pascalが提案するMaven オーバーレイ。次に、@Goyuixのような構造は、Perforce から静的コンテンツをチェックアウトすることを提案します。

b) Perforce overlays。これにより、プロジェクトごとに 1 つずつ、2 つの異なるワークスペース/クライアント仕様を持つことができ、それぞれで静的コンテンツをファイル システム内の予期される場所にインポートできます。これは、以前使用していた Subversion 構造に最も近いものです。

于 2010-04-23T16:34:21.237 に答える