Как заставить проект Java использовать пользовательскую библиотеку, сохраняя при этом доступ к исходному коду без ручнойJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Как заставить проект Java использовать пользовательскую библиотеку, сохраняя при этом доступ к исходному коду без ручной

Сообщение Anonymous »

У меня есть несколько проектов Java Gradle, которые должны интерпретировать одни и те же данные, поэтому я хотел бы создать библиотеку, которая будет использоваться всеми проектами.

Обычно ( в C++), я бы создал новый проект для библиотеки, а затем включил бы его в каждый из других проектов как подмодуль git, а затем включил бы инструкции по сборке библиотеки и зависел бы от нее. Мне это очень нравится, потому что я могу видеть исходный код библиотеки в каждом из проектов и выполнять отладку в них, что полезно, поскольку библиотека и другие проекты разрабатываются вместе. Я могу найти ошибку в библиотеке, а может просто хочу что-то изменить, и это очень легко сделать.

Чтобы было понятно, что бы я хотел сделать включить мою библиотеку Java в качестве подмодуля и отредактировать файл build.gradle, чтобы при создании проекта он собирал и «связывал» библиотеку, но я хочу сохранить возможность доступа и изменения исходного кода. библиотеки. Я не хочу открывать другой проект, компилировать JAR-файл и копировать его в каталог зависимостей каждый раз, когда я вношу изменение в библиотеку. Я также хочу «статически» связать библиотеку, чтобы можно было развернуть только один JAR.

В Java это работает не очень хорошо. Я попытался просто включить исходный код, но столкнулся с проблемами с именем пакета. Если у меня есть библиотека com.acme.lib, я не могу включить ее в com.acme.proj1, поскольку каталоги уже существуют.

Подробнее моя библиотека устроена так

Код: Выделить всё

src
└── main
└── java
└── com
└── acme
└── Library.java

и мои проекты устроены так

Код: Выделить всё

src
└── main
└── java
└── com
└── acme
└── Project1.java

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

В своих исследованиях я не нашел другого способа сделать это. Это возможно? Или мне следует действовать совершенно по-другому и использовать соглашение Java, о котором я не знаю?

Я использую IntelliJ IDEA, если это имеет значение.

Подробнее здесь: https://stackoverflow.com/questions/610 ... ss-to-sour
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»