JBoss AS 7 でwar ファイルをデプロイするとstandalone/deployments
、tmp/vfs/temp* で展開されます。ここで、/tmp/vfs から選択した特定のフォルダーへのこのパス (戦争が展開されている場所) を構成し、この戦争の展開されたフォルダーにも選択した名前を付けたいと考えています。私はそれをたくさんグーグルで検索しましたが、答えが得られませんでした。
私がそれを達成できるように、どこを変更すればよいか教えてください。
デプロイメントは、JBoss VFS によって処理される仮想ファイルシステム VFS に解凍されます。
何らかの値に反応しているのかもしれません。このソースを確認してください: https://github.com/jbossas/jboss-vfs/blob/922c3db1fb823a585dbb24477f0e03585b2558d3/src/main/java/org/jboss/vfs/TempFileProvider.java
public final class TempFileProvider implements Closeable {
private static final Logger log = Logger.getLogger(TempFileProvider.class);
private static final String JBOSS_TMP_DIR_PROPERTY = "jboss.server.temp.dir";
private static final String JVM_TMP_DIR_PROPERTY = "java.io.tmpdir";
private static final File TMP_ROOT;
private static final int RETRIES = 10;
private final AtomicBoolean open = new AtomicBoolean(true);
static {
String configTmpDir = System.getProperty(JBOSS_TMP_DIR_PROPERTY);
if (configTmpDir == null)
configTmpDir = System.getProperty(JVM_TMP_DIR_PROPERTY);
try {
TMP_ROOT = new File(configTmpDir, "vfs");
TMP_ROOT.mkdirs();
}
catch (Exception e) {
throw new RuntimeException("Can't set up temp file provider", e);
}
}
また、AS 5 では、記述子を使用して VFS ルートを次のように構成し
ました。 jboss-classloading.xml で VFS クラスローダーを構成
し
ます。
アプリケーションのディレクトリの名前を制御する必要がある場合は、デプロイメントディレクトリの展開ディレクトリとして配置できます。
必ずマーカーファイル.dodeployを作成するか、デプロイメントスキャナーの構成を変更してください。
auto-deploy-exploded="true"