Spec-Zone .ru
спецификации, руководства, описания, API
|
javah производит заголовочные файлы C и исходные файлы C от класса Java. Эти файлы обеспечивают соединительное связующее звено, которые позволяют Вашему Java и коду C взаимодействовать.
javah [ options ] fully-qualified-classname. . .
javah генерирует заголовочные и исходные файлы C, которые необходимы, чтобы реализовать собственные методы. Сгенерированные заголовочные и исходные файлы используются программами C, чтобы сослаться на переменные экземпляра объекта из собственного исходного кода..h файл содержит struct определение, расположение которого параллельно расположению соответствующего класса. Поля в struct соответствуют переменным экземпляра в классе.
Имя заголовочного файла и структуры, объявленной в пределах этого, получается из имени класса. Если класс, который передают к javah, в пакете, имя пакета предварительно ожидается и к имени заголовочного файла и к имени структуры. Подчеркивания (_) используются в качестве разделителей имени.
По умолчанию javah создает заголовочный файл для каждого класса, перечисленного на командной строке, и помещает файлы в текущий каталог. Используйте - опция тупиков, чтобы создать исходные файлы. Используйте-o опцию, чтобы связать результаты для всех перечисленных классов в единственный файл.
Новый собственный интерфейс метода, Java Собственный Интерфейс (JNI), не запрашивает информацию заголовка или тупиковые файлы. javah может все еще использоваться, чтобы генерировать собственную функцию метода proptotypes необходимый для стиля JNI собственные методы. javah производит вывод стиля JNI по умолчанию, и помещает результат в.h файл.
.:<your_path>Например:
.:/home/avh/classes:/usr/local/java/classesКак специальное удобство, элемент пути к классу, содержащий базовое имя
*
считается эквивалентным определению списка всех файлов в каталоге с расширением .jar
или .JAR
(программа java не может сказать различие между этими двумя вызовами).foo
содержит a.jar
и b.JAR
, тогда элемент пути к классу foo/*
расширяется до a A.jar:b.JAR
, за исключением того, что порядок файлов фляги является неуказанным. Все файлы фляги в указанном каталоге, даже скрытых, включаются в список. Запись пути к классу, состоящая просто из *
расширяется до списка всех файлов фляги в текущем каталоге. CLASSPATH
переменная окружения, где определено, будет так же расширена. Любое подстановочное расширение пути к классу происходит прежде, чем виртуальная машина Java запускается - никакая программа Java никогда не будет видеть нерасширенные подстановочные знаки кроме, запрашивая среду. Например; вызывая System.getenv("CLASSPATH").
.:/home/avh/classes:/usr/local/java/classes
javac, java, jdb, javap, javadoc