Прикрепите исходный код к библиотеке jar в Maven

Я использую пользовательскую библиотеку mylib.jar, которая не построена с помощью Maven для проекта Eclipse Maven Java:

<dependencies>
    <dependency>
        <groupId>caen</groupId>
        <artifactId>CAENRFIDLibrary</artifactId>
        <scope>system</scope>
        <version>1.0</version>
        <systemPath>${project.basedir}${file.separator}..${file.separator}mylib.jar</systemPath>
    </dependency>
</dependencies>

Но как сообщить системе, где находится исходный код текущей библиотеки, чтобы Eclipse мог его найти? Это можно настроить через Maven или я должен сказать об этом напрямую Eclipse через Java Source Attachment?

Прикрепите исходный код к библиотеке jar в Maven

UPD

Установка библиотеки в локальный репозиторий jar:

mvn install:install-file -Dfile = "C:\Projects\eclipse_ide_workspace\CAENRFIDLibrary.jar" -DgroupId=caen  -DartifactId=CAENRFIDLibrary -Dversion=1 -Dpackaging=jar

Получил неплохой вывод:

[INFO] Scanning for projects...
[INFO]
[INFO] ------------------< org.apache.maven:standalone-pom >-------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] --------------------------------[ pom ]---------------------------------
[INFO]
[INFO] --- maven-install-plugin:2.4:install-file (default-cli) @ standalone-pom ---
[INFO] Installing C:\Projects\eclipse_ide_workspace\CAENRFIDLibrary.jar to C:\Users\vico\.m2\repository\caen\CAENRFIDLibrary\1\CAENRFIDLibrary-1.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  0.472 s
[INFO] Finished at: 2018-11-17T11:45:41+02:00
[INFO] ------------------------------------------------------------------------

Пытаюсь добавить в свой проект pom.xml:

<dependency>
    <groupId>caen</groupId>
    <artifactId>CAENRFIDLibrary</artifactId>
    <version>1.0</version>
</dependency>       

Редактор Eclipse pom.xml жалуется на библиотеку

Missing artifact caen:CAENRFIDLibrary:jar:1.0

Что я делаю не так?

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

khmarbaise 17.11.2018 09:54

Я пытался загрузить библиотеку в репозиторий, но не могу ее использовать. Более подробно в теле вопроса UPD. И как мне туда загрузить исходный zip файл?

vico 17.11.2018 10:53
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
2
444
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Лучшим вариантом будет установка настраиваемого jar-файла в локальный репозиторий maven. См. Документацию ниже

https://maven.apache.org/guides/mini/guide-3rd-party-jars-local.html

А как прикрепить исходник этой библиотеки?

vico 17.11.2018 09:31

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

vico 17.11.2018 10:54

При установке в репозиторий maven вы использовали версию «1». Но когда вы ссылаетесь на него в pom, вы используете версию «1.0». Убедитесь, что вы используете ту же версию, которая существует в репозитории maven.

Prasanth Nair 17.11.2018 15:58

Другие вопросы по теме