$ rasterizer --help Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/batik/apps/rasterizer/Main : Unsupported major.minor version 52.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:800) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) at java.net.URLClassLoader.access$100(URLClassLoader.java:71) at java.net.URLClassLoader$1.run(URLClassLoader.java:361) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at java.lang.ClassLoader.loadClass(ClassLoader.java:425) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) at java.lang.ClassLoader.loadClass(ClassLoader.java:358) at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
java 8 надо установить.
Поставил 1.8: $ java -version openjdk version "1.8.0_71" OpenJDK Runtime Environment (build 1.8.0_71-b15) OpenJDK 64-Bit Server VM (build 25.71-b15, mixed mode) $ rasterizer Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/batik/apps/rasterizer/Main : Unsupported major.minor version 52.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:634) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:277) at java.net.URLClassLoader.access$000(URLClassLoader.java:73) at java.net.URLClassLoader$1.run(URLClassLoader.java:212) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader.loadClass(ClassLoader.java:321) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) Could not find the main class: org.apache.batik.apps.rasterizer.Main. Program will exit.
$ epmqp java 1.8 java-1.8.0-openjdk-headless-1.8.0.71-alt3_1.b15jpp8 java-1.8.0-openjdk-1.8.0.71-alt3_1.b15jpp8
гм. а readlink -r /usr/bin/java ? и env|grep JRE env|grep JAVA ?
(В ответ на комментарий №4) > гм. а readlink -r /usr/bin/java ? > и env|grep JRE > env|grep JAVA > ? $ readlink -r /usr/bin/java readlink: неверный ключ — «r» По команде «readlink --help» можно получить дополнительную информацию. [lav@builder64 etersoft]$ env | grep JRE [lav@builder64 etersoft]$ env | grep JAVA JAVA_HOME=/usr/lib/jvm/java [lav@builder64 etersoft]$ epmqf /usr/lib/jvm/java $ rpm -qf /usr/lib/jvm/java предупреждение: файл /usr/lib/jvm/java не принадлежит ни одному из пакетов Note: /usr/lib/jvm/java is link to /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64 $ rpm -qf /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64 java-1.6.0-openjdk-1.6.0.0-alt23_65.1.11jpp6 [lav@builder64 etersoft]$ epmqf java Note: java is placed as /usr/bin/java $ rpm -qf /usr/bin/java предупреждение: файл /usr/bin/java не принадлежит ни одному из пакетов Note: /usr/bin/java is link to /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.71-1.b15.x86_64/jre/bin/java $ rpm -qf /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.71-1.b15.x86_64/jre/bin/java java-1.8.0-openjdk-headless-1.8.0.71-alt3_1.b15jpp8 Удалил ещё java-1.6.0-openjdk java-1.6.0-openjdk-devel java-1.6.0-sun java-1.6.0-sun-devel java-1.6.0-sun-headless java-1.6.0-sun-jdbc pike7.6-java Действительно, через JAVA_HOME, который выставлялся в java-1.6.0, что-то находило левое. Теперь вот так: $ rasterizer --help Exception in thread "main" java.security.AccessControlException: access denied ("java.util.PropertyPermission" "java.security.policy" "write") at java.security.AccessControlContext.checkPermission(AccessControlContext.java:472) at java.security.AccessController.checkPermission(AccessController.java:884) at java.lang.SecurityManager.checkPermission(SecurityManager.java:549) at java.lang.System.setProperty(System.java:792) at org.apache.batik.util.ApplicationSecurityEnforcer.installSecurityManager(ApplicationSecurityEnforcer.java:257) at org.apache.batik.util.ApplicationSecurityEnforcer.enforceSecurity(ApplicationSecurityEnforcer.java:173) at org.apache.batik.apps.rasterizer.Main.execute(Main.java:922
readlink -f /usr/lib/jvm/java/jre/lib/security/* ?
(В ответ на комментарий №6) > readlink -f /usr/lib/jvm/java/jre/lib/security/* > ? [lav@builder64 ]$ readlink -f /usr/lib/jvm/java/jre/lib/security/* [lav@builder64 ]$ ls /usr/lib/jvm/java/jre/lib/security/* ls: невозможно получить доступ к /usr/lib/jvm/java/jre/lib/security/*: Нет такого файла или каталога Есть похожий каталог только в java-1.8.0-openjdk-headless: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.71-1.b15.x86_64/jre/lib/security И так: [lav@builder64 security]$ readlink -f /usr/lib/jvm/jre/lib/security /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.71-1.b15.x86_64/jre/lib/security
а какое содержимое этих каталогов? там внутри должны быть симлинки- интересно, куда они указывают.
(В ответ на комментарий №8) > а какое содержимое этих каталогов? > там внутри должны быть симлинки- интересно, куда они указывают. $ readlink -f /usr/lib/jvm/jre/lib/security/* /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.71-1.b15.x86_64/jre/lib/security/blacklisted.certs /etc/pki/java/cacerts /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.71-1.b15.x86_64/jre/lib/security/java.policy /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.71-1.b15.x86_64/jre/lib/security/java.security /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.71-1.b15.x86_64/jre/lib/security/local_policy.jar /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.71-1.b15.x86_64/jre/lib/security/nss.cfg /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.71-1.b15.x86_64/jre/lib/security/US_export_policy.jar
В strace видно, что обращается к /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.71-1.b15.x86_64/jre/lib/security/java.policy
вот так должно запуститься rasterizer -scriptSecurityOff
(В ответ на комментарий №11) > вот так должно запуститься > rasterizer -scriptSecurityOff Да, так запускается, спасибо. Но на Fedora запускается сразу без вопросов.
Это какой-то баг установки jvm, но еще не пойму, какой :( спасибо за report. он воспроизводится в hasher, так что буду разбираться когда новую сборку буду готовть.