Где находятся пакеты java в системе linux? Пакет орг.json не существует ошибка использования javac


Я пытаюсь скомпилировать библиотеку, которую я написал, используя javac, и я получаю ошибку: package org.json does not exist. Моя программа включает в себя org.json.JSONArray и org.json.JSONException.

Этот пакет установлен на моем компьютере, потому что я успешно скомпилировал приложения для android, которые импортируют библиотеки org.json. Я уверен, что все, что мне нужно сделать, это указать -classpath, но я не смог найти, где эти файлы живут в моей системе (ubuntu 10.10 64-bit sun-java6).

Будучи не в состоянии найти их на моей собственной системе я скачал файлы org.json из сюда, но я не смог скомпилировать их по отдельности, потому что они были взаимозависимы друг от друга.

Итак, у меня есть пара вопросов:

  1. кто-нибудь знает, где находится орг.формат JSON пакет lives от android sdk установить?
  2. где я могу найти учебник объяснение этих основных понятий относительно компиляции и javac.
2 4

2 ответа:

Где угодно. Что вам нужно сделать, так это изучить переменную CLASSPATH и убедиться, что она включает каталог с вашей библиотекой.

Вот первое:

  $ echo $CLASSPATH
И вы увидите свой путь к классу таким, каков он есть.

Теперь вам нужно найти файл jar, содержащий организацию.json; обратитесь к документации, но это может быть что-то столь же простое, как json.jar. В большинстве систем LINUX вы можете просто запустить

 $ locate json.jar

И вы получите имя пути для файла jarfile. Убедитесь, что путь-это часть пути вашего класса, и вы будете в жирном городе.

О, и учебники "Начало работы " вSun Oracle-это самое простое место для начала.


На самом деле, посмотрев на файлы, они не могут быть упакованы как файл jar. В этом случае вы хотите поместить их в исходные тексты, начиная с некоторого верхнего каталога (src в этом примере.)

   /src
       /org/json/ ... put the json files here
       ... put your files here

И когда вы скомпилируете, они все будут включены, что разрешит все проблемы. зависимости.

Опять же, место для поиска первых шагов-это учебник.

Все внешние JAR-файлы, которые вам нужно скомпилировать, должны находиться в пути к классу при компиляции. Самый неинвазивный способ сделать это-добавить эти элементы в командную строку javac, такую как

javac -classpath /path/to/json.jar;. -g YourClass.java

Или, что более вероятно, если вы используете IDE, добавьте эти банки к ссылочным банкам проекта в IDE.

Обычно не рекомендуется загрязнять глобальную переменную $CLASSPATH, так как это будет использоваться для всего, что вы делаете с java, что может привести к непреднамеренному рознь.