Próbuję zbudować JAR z elementem Class-Path
w MANIFEST.MF
. Dostaję elementy ścieżki klasowej z zewnętrznego źródła (Maven w moim przypadku). Ponieważ ścieżki są absolutne i poza moją kontrolą, mogą zawierać dziwne postacie, takie jak spacje.Jak obsługiwać pliki ze spacjami w ścieżce klas w MANIFEST.MF?
Ponieważ przestrzenie wykorzystywane są do oddzielnych elementów w ścieżce klasy, ta ścieżka nie działa:
Class-Path: C:\User\Some Odd Name\project\target\project-1.0.0.jar
Jak mogę uciec/kodowanie znaków/dziwne odstępy w pozycji ścieżce klasy w słoiku Manifest?
nie wiedzą, że są adresy URL. Jest to bardzo pomocne, ponieważ muszę podzielić listę adresów URL. Zastanawiałem się, co zrobić z spacjami w ścieżkach/nazwach plików JAR ... teraz wiem, że mogę zignorować. Będą one reprezentowane za pomocą encji URL, np. (Spacja) -> '% 20' – kevinarpe
Dobrze, jednak odkryłem, że dla tego rodzaju absolutnej ścieżki, również musiałem dołączyć"/"przed literą dysku: ' Ścieżka klasy:/C:/Użytkownik/Część% 20Odd% 20Nazwa/projekt/cel/projekt-1.0.0.jar' –
@RDAlkire Prawidłowe, ponieważ 'C' nie jest prawidłowym protokołem sieciowym, np.' Http' lub 'ftp'. Aby być bardzo poprawnym, powinno to być 'file:/C:/...' ale można argumentować, że kontekst (plik manifestu) jest plikiem, więc bazowy adres URL to zawsze 'file: // ... Naprawiony. –