Как я могу загрузить библиотеку web3j в проект sbt?

Я хочу загрузить web3j в проект sbt, работающий в Intellj IDE и основанный на игровой среде. Я пытался добавить

libraryDependencies += "org.web3j" % "web3j-maven-plugin" % "0.1.2"

в build.sbt но я получил ошибки. Есть идеи?

Error while importing sbt project:

[info] Loading settings from idea.sbt ...
[info] Loading global plugins from C:\Users\christos\.sbt\1.0\plugins
[info] Loading settings from plugins.sbt ...
[info] Loading project definition from C:\Users\christos\cryptolotto\project
[info] Loading settings from build.sbt ...
[info] Set current project to cryptolotto (in build file:/C:/Users/christos/cryptolotto/)
[info] sbt server started at local:sbt-server-b84ab1850f860119aa36
[cryptolotto] $
[info] Defining Global / sbtStructureOptions, Global / sbtStructureOutputFile, shellPrompt
[info] The new values will be used by no settings or tasks.
[info] Reapplying settings...
[info] Set current project to cryptolotto (in build file:/C:/Users/christos/cryptolotto/)
[info] Applying State transformations org.jetbrains.sbt.CreateTasks from C:/Users/christos/.IdeaIC2017.3/config/plugins/Scala/launcher/sbt-structure-1.0.jar
[info] Reapplying settings...
[info] Set current project to cryptolotto (in build file:/C:/Users/christos/cryptolotto/)
[info] Updating ...
[warn]  module not found: org.ethereum#solcJ-all;0.4.8
[warn] ==== local: tried
[warn]   C:\Users\christos\.ivy2\local\org.ethereum\solcJ-all\0.4.8\ivys\ivy.xml
[warn] ==== public: tried
[warn]   https://repo1.maven.org/maven2/org/ethereum/solcJ-all/0.4.8/solcJ-all-0.4.8.pom
[warn] ==== local-preloaded-ivy: tried
[warn]   C:\Users\christos\.sbt\preloaded\org.ethereum\solcJ-all\0.4.8\ivys\ivy.xml
[warn] ==== local-preloaded: tried
[warn]   file:/C:/Users/christos/.sbt/preloaded/org/ethereum/solcJ-all/0.4.8/solcJ-all-0.4.8.pom
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  ::          UNRESOLVED DEPENDENCIES         ::
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  :: org.ethereum#solcJ-all;0.4.8: not found
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]

3 ответа

Прежде всего, пожалуйста, обновите вопрос с конкретной ошибкой, которую вы получаете.

Проблема может заключаться в использовании "%%" между идентификатором группы и artifactId. Для зависимостей scala имеет смысл только добавить версию scala вашего проекта к идентификатору артефакта зависимости. Поскольку web3j написан на Java, а не на scala, здесь нет смысла. Попробуйте с одним "%".

РЕДАКТИРОВАТЬ: спасибо за обновление вопроса. Действительно, sbt ищет артефакт с именем web3j-maven-plugin_2.12, потому что он добавил версию вашего проекта в Scala к идентификатору артефакта.

Я не опубликовал ошибку, потому что я думал, что добавление

libraryDependencies += "org.web3j" %% "web3j-maven-plugin" % "0.1.2"

был совершенно неверный способ сделать это.

Наконец-то мне удалось решить эту проблему и добавить web3j в build.sbt, добавив строку:

libraryDependencies += "org.web3j" % "core" % "3.3.1"
Другие вопросы по тегам