Создал test.jar файл проекта. Поместил его в папку libs другого, но не пойму как импортировать классы/методы из этого test.jar. Подскажите пожалуйста, как организовать импорт. Пытаюсь импортировать следующие классы
import com.JSONelements.JSONBaseElement;
import com.parseJSON.BaseParser;
import com.workWithFile.ReadFromFile; 3 класса(я написал с указанием пакетов)
Jar собирал без использовании системы сборки, просто прописал .bat и запустил его, jar файл успешно создался
D:
cd D:\workspace\JSONParser
jar cf parseJSON.jar classFoulder/* src/*
pause
Вообще использую Eclipse, но похоже он не видит классы. Хочу научиться и с помощью Екслипса(без сборщиков) и с помощью командной строки это проделывать. Но статей толковых нет. Написал это в главном классе нового проекта, но импорт не работает:
package com.json;
import com.JSONelements.JSONBaseElement;
import com.parseJSON.BaseParser;
import com.workWithFile.ReadFromFile;
public class TestJSON {
public static void main(String[] args) {
String jsonString = ReadFromFile.readFile("d:/json1.txt");
System.out.println("Formated from file: " + jsonString);
JSONBaseElement parserJson = BaseParser.mainParse(jsonString);
System.out.println(parserJson);
}
}
В импортируемом .jar файле (созданной вами библиотеке) должен точно быть указан package, первой строчкой в каждом вашем классе.
Затем, если вы компилируете проект напрямую консольными командами, желаемый .jar файл необходимо добавить в classpath проекта, который будет использовать нужную библиотеку.
Пример:
javac -cp "/путь/до/библиотеки.jar" Проект.jar
Тогда в проекте "проект.jar" можно будет использовать библиотеку.
Если вы используете среду разработки IntelliJ IDEA, тогда нужно сделать следующее:
зайти в Project Structure... | Libraries, нажать + и добавить нужную библиотеку в список библиотек:
Это делается для того, чтобы вы могли указать import com.ваш.пэкейдж.ИмяКласса; в проекте, и при компиляции проект знал, откуда импортировать нужные классы.
С системами сборки всё гораздо проще: если нужная библиотека есть в каком-нибудь из публичных репозиториев, например в Maven Central, то достаточно будет указать всего несколько строчек в конфигурационном файле.
Пример для maven: нужно добавить строчки ниже в файл pom.xml:
<dependencies>
<dependency>
<groupId>group.id.библиотеки</groupId>
<artifactId>имя-библиотеки</artifactId>
<version>версия</version>
</dependency>
<!-- другие проекты -->
<dependencies>
Для gradle: добавить строчки ниже в build.gradle:
dependencies {
compile group: 'group.id.библиотеки', name: 'имя-библиотеки', version: 'версия'
}
И так далее.
Файл надо поместить в CLASSPATH и тогда классы будут доступны для импорта
Продвижение своими сайтами как стратегия роста и независимости