11

Class-Pathの要素を使用して JAR を構築しようとしていMANIFEST.MFます。外部ソース (私の場合は Maven) からクラスパスの要素を取得します。パスは絶対的であり、私の制御を超えているため、スペースなどの奇妙な文字が含まれている可能性があります。

クラス パス内の項目を区切るためにスペースが使用されているため、このパスは機能しません。

Class-Path: C:\User\Some Odd Name\project\target\project-1.0.0.jar

JARマニフェストのクラスパスの項目にある奇妙な文字/空白をエスケープ/エンコードするにはどうすればよいですか?

4

2 に答える 2

15

要素内のClass-Path要素は URL であるため、通常のエスケープ ルールが適用されます (スラッシュも使用する必要があります)。

Class-Path: /C:/User/Some%20Odd%20Name/project/target/project-1.0.0.jar

注: はC有効なネットワーク プロトコルではないため、最初のスラッシュが必要です (httpや などftp)。あなたが衒学的だったなら、そうあるべきですfile:///C:/...

于 2013-09-06T14:07:48.417 に答える
0

私にとって、キャレット文字は、 Windowsクラスパスで withespace を正常にエスケープする唯一の方法でした。

Class-Path: C:\User\Some^ Odd^ Name\project\target\project-1.0.0.jar
于 2014-11-28T21:03:33.090 に答える