Я хочу опробовать некоторые функции, появившиеся в новом Oracle JDK 1.7. Я последовал за постом: - Oracle JDK 1.7 , но пост, похоже, не помог.
Я пытался извлечь структуру для файла класса java.nio.file.Paths
, но получил следующую ошибку: -
buffer@ankit:~$ javap java.nio.file.Paths ERROR:Could not find java.nio.file.Paths
Однако я могу легко получить информацию о структурах классов до JAVA SE 1.6 , вот пример: -
buffer@ankit:~$ javap java.lang.Object
Compiled from "Object.java"
public class java.lang.Object{
public java.lang.Object();
public final native java.lang.Class getClass();
public native int hashCode();
public boolean equals(java.lang.Object);
protected native java.lang.Object clone() throws java.lang.CloneNotSupportedException;
public java.lang.String toString();
public final native void notify();
public final native void notifyAll();
public final native void wait(long) throws java.lang.InterruptedException;
public final void wait(long, int) throws java.lang.InterruptedException;
public final void wait() throws java.lang.InterruptedException;
protected void finalize() throws java.lang.Throwable;
static {};
}
Запуск java -version дает следующий результат: -
buffer @ ankit: ~ $ java -version java version "1.7.0_09 «Среда выполнения Java (TM) SE (сборка 1.7.0_09-b05) 64-разрядная серверная виртуальная машина Java HotSpot (TM) (сборка 23.5-b02, смешанный режим)
blockquote>СИСТЕМНАЯ ИНФОРМАЦИЯ
buffer@ankit:~$ sudo update-alternatives --config java [sudo] password for buffer: There are 4 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 auto mode 1 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 manual mode 2 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1051 manual mode 3 /usr/lib/jvm/jdk1.7.0_09/ 1 manual mode * 4 /usr/lib/jvm/jdk1.7.0_09/bin/java 1 manual mode buffer@ankit:~$ sudo update-alternatives --config javac There are 2 choices for the alternative javac (providing /usr/bin/javac). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/jvm/java-6-openjdk-amd64/bin/javac 1061 auto mode 1 /usr/lib/jvm/java-6-openjdk-amd64/bin/javac 1061 manual mode * 2 /usr/lib/jvm/jdk1.7.0_09/bin/javac 1 manual mode buffer@ankit:~$ sudo update-alternatives --config javaws There are 3 choices for the alternative javaws (providing /usr/bin/javaws). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/javaws 1061 auto mode 1 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/javaws 1061 manual mode 2 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/javaws 1060 manual mode * 3 /usr/lib/jvm/jdk1.7.0_09/bin/javaws 1 manual mode
Структура каталогов
/usr/lib/jvm/
выглядит следующим образом: -buffer@ankit:~$ ls -l /usr/lib/jvm/ total 24 lrwxrwxrwx 1 root root 24 Dec 2 2011 default-java -> java-1.6.0-openjdk-amd64 drwxr-xr-x 4 root root 4096 Nov 8 16:24 java-1.5.0-gcj-4.6 lrwxrwxrwx 1 root root 24 Dec 2 2011 java-1.6.0-openjdk -> java-1.6.0-openjdk-amd64 lrwxrwxrwx 1 root root 20 Oct 25 00:01 java-1.6.0-openjdk-amd64 -> java-6-openjdk-amd64 lrwxrwxrwx 1 root root 20 Oct 25 06:59 java-1.7.0-openjdk-amd64 -> java-7-openjdk-amd64 lrwxrwxrwx 1 root root 24 Dec 2 2011 java-6-openjdk -> java-1.6.0-openjdk-amd64 drwxr-xr-x 7 root root 4096 Nov 8 16:24 java-6-openjdk-amd64 drwxr-xr-x 3 root root 4096 Nov 8 16:24 java-6-openjdk-common drwxr-xr-x 5 root root 4096 Nov 8 05:48 java-7-openjdk-amd64 drwxr-xr-x 3 root root 4096 Nov 8 05:48 java-7-openjdk-common drwxr-xr-x 8 buffer buffer 4096 Sep 25 09:08 jdk1.7.0_09
Любая помощь будет принята с благодарностью.
Java состоит из множества отдельных исполняемых файлов - javac
и javaws
являются наиболее распространенными.
javap
- это другое - при установке Java вам нужно индивидуально убедиться, что каждый исполняемый файл зарегистрирован - вы делаете это с помощью update-alternatives
sudo update-alternatives --install "/usr/bin/java" "javap" "/usr/lib/jvm/jdk1.7.0/bin/javap" 1 sudo update-alternatives --config javap
Этот ответ дает вам список отдельных исполняемых файлов. что вы можете зарегистрироваться, если хотите использовать их во время разработки.
В качестве альтернативы - вы можете использовать сторонний PPA, такой как webupd8
- но как сам разработчик, мне нравится понимать проблемы и адаптировать мою конфигурацию к моим потребностям.
Установите его через этот PPA
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in-ubuntu-via. HTML