Добавить maven зависимость в проект SBT - PullRequest
0 голосов
/ 19 сентября 2019

Я пытаюсь сослаться на зависимость проекта maven в моем файле build.sbt.Я понимаю, что мне нужно добавить resolver в мой файл, так как проект размещен во внутреннем хранилище артефактов

build.sbt

libraryDependencies ++= Seq(
  "org.apache.spark" %% "spark-core" % "2.4.4",
  "org.apache.spark" %% "spark-sql" % "2.4.4",
  "com.<companyname>" %% "<libraryname>" % "2.3.0"
)

resolvers += "<library name>" at "http://artifactory.<internal url>.io:80/dsc-mvn"

Однако, оказывается, что SBT заканчивает поиск пути с _2.11 к нему добавлена ​​версия.Это сообщение об ошибке, которое я вижу в IntelliJ

[info] Loading settings for project sbt-demo from build.sbt ...
[warn] Discarding 1 session setting.  Use 'session save' to persist session settings.
[info] Set current project to SparkExample (in build file:<project_path>)
[info] Defining Global / sbtStructureOptions
[info] The new value will be used by Global / ssOptions
[info] Reapplying settings...
[info] Set current project to SparkExample (in build file:<project_path>)
[info] Updating ...
[warn]  module not found: com.<companyname>#<libraryname>_2.11;2.3.0
[warn] ==== local: tried
[warn]   /Users/vshah/.ivy2/local/com.<companyname>/<libraryname>_2.11/2.3.0/ivys/ivy.xml
[warn] ==== public: tried
[warn]   https://repo1.maven.org/maven2/com/<companyname>/<libraryname>_2.11/2.3.0/<libraryname>_2.11-2.3.0.pom
[warn] ==== local-preloaded-ivy: tried
[warn]   /Users/vshah/.sbt/preloaded/com.<companyname>/<libraryname>_2.11/2.3.0/ivys/ivy.xml
[warn] ==== local-preloaded: tried
[warn]   file:////Users/vshah/.sbt/preloaded/com/<companyname>/<libraryname>_2.11/2.3.0/<libraryname>_2.11-2.3.0.pom
[warn] ==== <libraryname>: tried
[warn]   http://artifactory.<internal url>.io:80/dsc-mvn/com/<companyname>/<libraryname>_2.11/2.3.0/<libraryname>_2.11-2.3.0.pom
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  ::          UNRESOLVED DEPENDENCIES         ::
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  :: com.<companyname>#<libraryname>_2.11;2.3.0: not found
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]

Неверный путь (так как проект пытается выполнить поиск выше) - http://artifactory.<internal url>.io/dsc-mvn/com/<companyname>/<libraryname>_2.11/2.3.0/<libraryname>_2.11-2.3.0.pom

Допустимый путь - http://artifactory.<internal url>.io/dsc-mvn/com/<companyname>/<libraryname>/2.3.0/<libraryname>_2.11-2.3.0.pom

Мой вопрос: как я могу сообщить SBT, что я ссылаюсь на проект maven по указанному выше действительному пути?

Ответы [ 2 ]

1 голос
/ 19 сентября 2019

Это должно работать:

"com.<companyname>" % "<libraryname>" % "2.3.0"

%% в определении автоматически добавляет версию проекта Scala к имени библиотеки.Обратитесь к официальной документации sbt для получения дополнительной информации.

0 голосов
/ 19 сентября 2019

обратитесь к https://mvnrepository.com/artifact/org.scala-sbt, чтобы получить правильный инструмент Build для вашего проекта, и, пожалуйста, проверьте, совпадает ли версия в зависимости с версией вашего scala.

Не могли бы вы рассказать мне больше окакая зависимость вам нужна?

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