У меня есть приложение для загрузки весны, и я начинаю его с -Dloader.path =. Одним из файлов jar является hive-exec.jar. У этого есть файл jar в комплекте, названный minlog-1.2.jar. Если я указываю этот файл в -Dloader.path, я получаю сообщение об ошибке,Spring boot createJarFileFromFileEntry
java.lang.IllegalStateException: Не удается открыть вложенную запись 'minlog-1.2.jar. Он был сжат, и вложенные файлы jar должны храниться без сжатия. Пожалуйста, проверьте механизм, используемый для создания исполняемого файла jar на org.springframework.boot.loader.jar.JarFile.createJarFileFromFileEntry (JarFile.java:378) на org.springframework.boot.loader.jar.JarFile.createJarFileFromEntry (JarFile .java: 355) на org.springframework.boot.loader.jar.JarFile.getNestedJarFile (JarFile.java:341) на org.springframework.boot.loader.archive.JarFileArchive.getNestedArchive (JarFileArchive.java:108) на org.springframework.boot.loader.archive.JarFileArchive.getNestedArchives (JarFileArchive.java:92) на org.springframework.boot.loader.PropertiesLauncher.getClassPathArchives (СвойстваLauncher.java:445) на org.springframework.boot.loader .Launcher.launch (Launcher.java:60) at org.springframework.boot.loader .PropertiesLauncher.main (PropertiesLauncher.java:564)
Однако, если скопировать этот файл в папку и добавить эту папку в -Dloader.path, я не получаю сообщение об ошибке.
Что мне не хватает?
Спасибо,
Насколько я знаю, для использования loader.path нужно использовать «org.springframework.boot.loader.PropertiesLauncher» вместо jar launcher. Я использую его, но он все равно терпит неудачу с тем же исключением. Я предполагаю, что он использует Jar launcher. как насчет открытия ошибки для этого? – nir
Я также использую 'org.springframework.boot.loader.PropertiesLauncher'. Для меня просто немного странно, что мы имеем разные способы поведения, импортируя банку, предоставляя каталог, содержащий его, и предоставляем банку. Я последую за вашей рекогносцировкой и открою следующую проблему: https://github.com/spring-projects/spring-boot/issues/3701 –