Установка пути к классам в Java-проекте Visual Studio Code Maven - PullRequest
0 голосов
/ 07 июня 2018

Я пытаюсь использовать код Visual Studio на CentOS 7 для запуска / отладки существующего Java-проекта Hello World от стороннего поставщика.Я относительно новичок в Java, поэтому, возможно, есть кое-что очевидное, чего мне не хватает.

Я установил код Visual Studio с расширениями, описанными здесь .Я также настроил Apache Maven и смог создать новый Java-проект Maven в Visual Studio Code, который компилируется и может быть отлажен.Теперь я хочу взять пример Hello World стороннего поставщика (который не использует Maven) и включить его в работающий пример Maven.

Я могу скомпилировать и запустить нетронутый Hello World стороннего поставщика.приложение из командной строки.Когда я собираю его из командной строки, мне нужно запустить скрипт build.sh, который содержит следующее:

 #!/bin/sh
 "$JDK/bin/javac" -classpath ".:..:../../../Inc/Java/com.abbyy.FREngine.jar" \ Hello.java

Когда я копирую и вставляю исходный код Java в мой основной файл Java в проекте Maven, эта строка ...

 import.com.abbyy.FREngine.*;

... по понятным причинам показывает ошибку "Импорт com.abbyy не может быть решен" при попытке компиляции.

Похоже, мне нужно установитьпуть к классам где-то в моем проекте ... но я не могу понять, где.Да, в моем проекте есть файл ".classpath", но неясно, куда должна идти эта информация ... или вообще должна ли она быть в этом файле.

Есть предложения?

Ответы [ 2 ]

0 голосов
/ 11 июня 2018

Мне удалось решить мою проблему, добавив эту запись в файл .classpath:

 <classpathentry kind="lib" path="/opt/ABBYY/FREngine12/Inc/Java/com.abbyy.FREngine.jar" />
0 голосов
/ 07 июня 2018

Я не нашел эту банку в онлайн-репозиториях Maven.Это означает, что вы не можете добавить этот jar-файл в качестве зависимости в свой pom.xml без загрузки jar-файла в локальный репозиторий maven.

Ниже приведено решение, выбранное из https://forum.ocrsdk.com/thread/5116-frengine-11-maven-is-not-supported/

Firstвам нужно загрузить jar в репозиторий maven, используя

mvn install:install-file -Dpackaging=jar -DgeneratePom=true -Dclassifier=win -DgroupId=com.abbyy.FREngine -DartifactId=com.abbyy.FREngine.jar -Dversion=11 -Dfile=local_path_to_the_jar_file

. Затем вы можете использовать зависимость в вашем pom.xml, используя:

<dependency>
 <groupId>com.abbyy.FREngine</groupId>
 <artifactId>com.abbyy.FREngine.jar</artifactId>
 <version>11</version>
 <classifier>${os.prefix}</classifier>
</dependency>

«Классификатор», используемый в решениитребуется, потому что похоже, что jar, который вы используете, встраивает некоторый нативный скомпилированный код (файлы dll или около того).Вам нужно проверить, встраивает ли ваш jar-файл .dll или .so файлы или оба

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