Вопрос по java, linux, command-line, package – создание пакета Java в командной строке

7

Хотя, вероятно, рекомендуется использовать IDE для написания расширенных java-проектов, я лично предпочитаю запускать почти полностью из командной строки (используя gedit в качестве текстового редактора). Поэтому, пожалуйста, не говорите мне "Просто используйте затмение!" или что-то: P

Мой вопрос заключается в том, что метод создания пакета в Java с помощью команды.

Я не говорю об упаковке приложения, которое выполняется в командной строке, я говорю о создании пакета в командной строке. Я делаю текстовый файл? Я делаю каталог?

Кроме того, как можно ссылаться на связанных библиотек и нативов без использования IDE?

Я знаю, что мне здесь очень неловко, но я действительно предпочитаю, чтобы управление работало в командной строке.

Нет, баночки достаточно просты: P Я имел в виду реальный пакет (который, оказывается, просто каталог ... gossfunkel
"Создание пакета"? Вы имеете в виду «создание JAR»? Если это так, начните с документации: Docs.oracle.com / JavaSE / учебник / развертывания / банка / index.html. Oliver Charlesworth

Ваш Ответ

4   ответа
5

а:com.mycompany.util соответствует каталогуcom/mycompany/util.

При запуске, компиляции и т. Д. Ваш текущий рабочий каталог должен находиться там, где находится верхний каталог.

Чтобы включить библиотеки, включите их в путь к классам при компиляции и запуске. Например, создайте каталог проектаmyproject а под этим ваши java-файлы и пакеты подmyproject/src/ и библиотеки, которые вы используете подmyproject/libs/ Тогда, когда ваш текущий рабочий каталог -myproject выполнитьjava -cp .:libs/*.jar или то же самое сjavac.

Но я советую тебе использовать муравья или мавена.

вот так ... пакеты - это не что иное, как организованные структуры каталогов Suraj Chandran
7

(2) указать пакет в файле Java; (3) скомпилируйте его.

Например, если вы хотите создать пакетcom.mycompany.myproject, тогда вам нужно начать в базовом каталоге для вашего проекта, а затем:

(1) создать каталогcom/mycompany/myproject

(2) создайте java-файлы в этом каталоге, указавpackage com.mycompany.myproject в них

(3) скомпилируйте файлы, например, с помощьюjavac -cp . com/mycompany/myproject/*.java

Возможно, вы захотите указать другой выходной каталог, чтобы не смешивать исходные коды и скомпилированные классы.

Если вам нужно использовать внешние библиотеки (файлы .jar) для компиляции, тогда вам нужно использовать-cp или-classpath параметр командной строки дляjavac инструмент для их указания, например

javac -cp .:some_library.jar:lib/another_library.java com/mycompany/myproject/*.java

Это может быть хорошей идеей, чтобы поместить все внешние библиотеки в одном месте, например.lib подкаталог вашего основного каталога проекта. И, кстати, вышеупомянутоеjavacоманда @ предполагает Unix-подобную среду. Если вы работаете в Windows, вам нужно использовать; для разделения пути.

2

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

Я не думаю, что это то, что нужно после ОП. Он говорит о пакетах в исходном коде Java, а не о том, как упаковать окончательное приложение. Aleks G
@ AleksG - Maven все равно будет полезен, так как ОП нужно «связать с родственными библиотеками». David Harkness
1

поэтому простой способ создания Package позволяет предположить, что com.organization.test в терминале будет иметь вид

mkdir -p com/organization/test

Похожие вопросы