#java #eclipse #maven #visual-studio-code #quickfixj
#java #затмение #maven #visual-studio-code #quickfixj
Вопрос:
Я не могу успешно импортировать проект QuickFix / J ни в одну из моих IDE, я пробовал с Eclipse, VS Code и IntelliJ.
Следуя инструкциям проекта QuickFix / J, сначала я создаю проект с помощью:
$ mvn clean package -Dmaven.javadoc.skip=true -DskipTests -PskipBundlePlugin
В сборке все идет хорошо:
[INFO] Building zip: /home/helesto/kdi/github/quickfixj/quickfixj-distribution/target/org.quickfixj-2.2.1-SNAPSHOT-bin.zip
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary for QuickFIX/J Parent 2.2.1-SNAPSHOT:
[INFO]
[INFO] QuickFIX/J Parent .................................. SUCCESS [ 4.654 s]
[INFO] QuickFIX/J Code Generator Maven Plugin ............. SUCCESS [ 28.844 s]
[INFO] QuickFIX/J Dictionary Generator .................... SUCCESS [ 1.178 s]
[INFO] QuickFIX/J Core engine ............................. SUCCESS [06:51 min]
[INFO] QuickFIX/J Message classes for various FIX specs ... SUCCESS [ 0.003 s]
[INFO] QuickFIX/J Message classes for FIX 4.0 ............. SUCCESS [ 1.028 s]
[INFO] QuickFIX/J Message classes for FIX 4.1 ............. SUCCESS [ 0.835 s]
[INFO] QuickFIX/J Message classes for FIX 4.2 ............. SUCCESS [ 0.874 s]
[INFO] QuickFIX/J Message classes for FIX 4.3 ............. SUCCESS [ 0.839 s]
[INFO] QuickFIX/J Message classes for FIX 4.4 ............. SUCCESS [ 1.082 s]
[INFO] QuickFIX/J Message classes for FIX 5.0 ............. SUCCESS [ 1.349 s]
[INFO] QuickFIX/J Message classes for FIX 5.0 SP1 ......... SUCCESS [ 1.283 s]
[INFO] QuickFIX/J Message classes for FIX 5.0 SP2 ......... SUCCESS [ 1.215 s]
[INFO] QuickFIX/J Message classes for FIXT 1.1 ............ SUCCESS [ 0.710 s]
[INFO] QuickFIX/J Message classes for all FIX specs ....... SUCCESS [ 2.294 s]
[INFO] QuickFIX/J Examples ................................ SUCCESS [ 0.004 s]
[INFO] QuickFIX/J Examples - Executor ..................... SUCCESS [ 7.030 s]
[INFO] QuickFIX/J Examples - Order Match .................. SUCCESS [ 4.830 s]
[INFO] QuickFIX/J Examples - Banzai ....................... SUCCESS [ 5.036 s]
[INFO] QuickFIX/J All runtime modules ..................... SUCCESS [ 18.797 s]
[INFO] QuickFIX/J Distribution ............................ SUCCESS [ 16.725 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 08:31 min
[INFO] Finished at: 2021-01-15T19:11:18-03:00
[INFO] ------------------------------------------------------------------------
Затем я пытаюсь импортировать его в IDE, и что-то идет не так с quickfixj-codegenerator
.
Я пробовал некоторые вещи, которые я нашел в Интернете, но ничто не решает мою проблему.
Я буду очень рад, если кто-нибудь сможет мне помочь 🙂
Моя машина
Maven
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: /kdi/maven
Java version: 11.0.9.1, vendor: Ubuntu, runtime: /usr/lib/jvm/java-11-openjdk-amd64
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "5.8.0-36-generic", arch: "amd64", family: "unix"
Java
openjdk version "11.0.9.1" 2020-11-04
OpenJDK Runtime Environment (build 11.0.9.1 1-Ubuntu-0ubuntu1.20.04)
OpenJDK 64-Bit Server VM (build 11.0.9.1 1-Ubuntu-0ubuntu1.20.04, mixed mode, sharing)
javac 11.0.9.1
ОС
Linux machine 5.8.0-36-generic #40~20.04.1-Ubuntu SMP Wed Jan 6 10:15:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Инструкции по сборке QuickFix / J
В https://www.quickfixj.org/usermanual/2.1.0/installation.html#dependencies Я нашел:
Поддержка IDE: в каталоге верхнего уровня извлеченного каталога есть файлы определения проекта Eclipse и Netbeans. При первом создании проекта в нем не будет сгенерированных классов сообщений, и будут возникать ошибки компиляции! Лучше всего скомпилировать один раз в командной строке перед импортом проекта в IDE.
I’ve searched the project documentation and I didn’t find nothing about this issue.
Eclipse — Error
Version: 2020-12 (4.18.0)
Reports the following error when I import the project:
No marketplace entries found to handle maven-plugin-plugin:3.2:descriptor in Eclipse. Please see Help for more information.
No marketplace entries found to handle Execution default-descriptor, in /quickfixj-codegenerator/pom.xml in Eclipse. Please see Help for more information
After importing, the /quickfixj-codegenerator/pom.xml says that:
Plugin execution not covered by lifecycle configuration: org.apache.maven.plugins:maven-plugin-plugin:3.2:descriptor (execution: default-descriptor, phase: process-classes)
VS Code — Error
Version 1.52.1
Error:
Could not find artifact org.quickfixj:quickfixj-codegenerator:jar:2.2.1-SNAPSHOT
IntelliJ — Ошибка
Версия Сообщество 2020.3.2
Ошибка:
Cannot resolve plugin org.quickfixj:quickfixj-codegenerator:2.2.1-SNAPSHOT
Cannot resolve plugin org.apache.maven.plugins:maven-install-plugin:<unknown>
Поддержка по электронной почте QuickFix / J — та же проблема, что и у меня
О той же проблеме сообщалось в электронном письме поддержки обсуждения Quickfixj:
В ветке электронной почты я не нашел ответа на эту проблему.
Сообщение о проблеме поступило в марте 2019 года. Единственное отличие для меня в том, что Quick / FIXJ теперь находится в более новой версии.
Цитируя ту же проблему в электронном письме:
Я пытаюсь создать среду разработки для quickfixj в eclipse. Я клонировал репозиторий, загрузил исходные тексты и выполнил команду:
чистый пакет mvn -Dmaven.javadoc.skip=true -DskipTests -PskipBundlePlugin
так же, как предложено на веб-сайте. Эта часть работала без каких-либо ошибок.
После этого я пытаюсь импортировать проекты в eclipse. Проекты идентифицируются как проекты maven и добавляются в рабочую область, но при компиляции после импорта отображается ошибка: не удалось найти артефакт org.quickfixj:quickfixj-codegenerator: jar:2.2.0-СНИМОК, который не позволяет создавать quickfixj-core, что, в свою очередь, не позволяетдругие проекты для компиляции, поскольку все они зависят от основного проекта.
Я попробовал предложение, которое я нашел в сети, для запуска mvn eclipse: eclipse, чтобы помочь в создании проектов eclipse, но к тому времени, когда он достигает проекта core engine, он выдает ту же ошибку: [ОШИБКА] Плагин org.quickfixj:quickfixj-codegenerator:2.2.0-SNAPSHOT или одна из его зависимостейне удалось решить: не удалось найти артефакт org.quickfixj:quickfixj-codegenerator:jar: 2.2.0-СНИМОК -> [Справка 1]
Комментарии:
1. Что произойдет, если вы запустите
install
target, somvn clean install -Dmaven.javadoc.skip=true -DskipTests -PskipBundlePlugin
, а затем обновите проект в Eclipse? Я использую Netbeans для разработки QFJ, но не могу вспомнить, вносил ли я какие-либо изменения в то время.2. @ChristophJohn большое спасибо! Я работаю с
install
IntelliJ и отлично работаю с ним. С Eclipse я получил ту же ошибку, а с VS Code все стало еще хуже. Я никогда не пользовался Netbeans, но попробую позже. Жаль, что я не могу использовать VS Code, но IntelliJ подойдет.
Ответ №1:
Я смог успешно импортировать проект в IntelliJ
и Netbeans
с помощью @ChristophJohn.
Сначала запустите:
mvn clean install -Dmaven.javadoc.skip=true -DskipTests -PskipBundlePlugin
А затем просто импортируйте его в IntelliJ
или Netbeans
.
Я не смог импортировать его в Eclipse или VS Code. Но, поскольку это работало с IntelliJ
и Netbeans
, для меня этого достаточно.
Комментарии:
1. Что произойдет в Eclipse, если вы просто удалите ошибку из представления нажатием
Delete
клавиши? И, конечно, отключить компиляцию проекта в Eclipse.2. Я пробовал это, но не сработало. Другие пакеты не могут найти некоторые классы, поэтому я получаю ошибки, подобные
ApplExtID cannot be resolved to a variable
на/quickfixj-core/src/main/java/quickfix/Message.java
. Вероятно, если бы у меня было больше возможностей в Eclipse, я смог бы решить эту проблему. Спасибо за помощь.3. Я что-нибудь придумаю. И проверит мою установку Netbeans, если я сделал там что-то особенное.
4. IntelliJ отлично работает для меня. Но если вы хотите, чтобы я провел какие-то тесты в Eclipse, просто скажите. Спасибо.
5. Я установил Netbeans, и QuickFix / J тоже отлично с ним работал.