私はいくつかの単純なJavaコードに問題があります:
// the env var is set
public final String METACHEK_pref = System.getenv().get("MCHK_DIR");
// the env var should be :
public String tempMP = "/disk3/METACHECK/Metacheck/metachek";
System.out.println("#1:"+METACHEK_pref+File.separator+"metachek");
System.out.println("#2:"+tempMP+File.separator+"metachek");
印刷するもの:
#1:/metachekTACHECK/Metacheck/metachek
#2:/disk3/METACHECK/Metacheck/metachek/metachek
私は別のOSでそのコードを試しましたが、1つのソラリスだけがこの問題を抱えています。そしてもちろん、コードはこの特定のサーバーで機能する必要があります。
非表示のconfファイルに設定するのが奇妙なパラメータであるかどうかをどこで確認するかわかりません。
誰が何が起こっているのか考えていますか?concatが挿入コマンドに進化したのはなぜですか?
編集:
私はこのコードで別のjarファイルを作成しました:
public class test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String METACHEK_pref = new String(System.getenv().get("MCHK_DIR").toString());
String tempMP = "/disk3/METACHECK/Metacheck/metachek";
System.out.println("#1:"+METACHEK_pref);
System.out.println("#2:"+METACHEK_pref+File.separator+"metachek");
System.out.println("#3:"+tempMP+File.separator+"metachek");
}
}
これが出力です:
#1:/disk3/METACHECK/Metacheck/metachek /metachek/METACHECK/Metacheck/metachek #3:/disk3/METACHECK/Metacheck/metachek/metachek
#2がどのように消えるかわかりますか?