Много предупреждений с playframework / play-java-seed.g8 - PullRequest
0 голосов
/ 01 июня 2018

Я создал проект Play, используя Play Java seed :

sbt new playframework/play-java-seed.g8

со следующими параметрами:

name [play-java-seed]: name
organization [com.example]:
scala_version [2.12.4]:
play_version [2.6.15]:
sbt_version [1.0.4]:

Я получил много предупреждений после выполненияsbt run:

Java HotSpot(TM) 64-Bit Server VM warning: Ignoring option MaxPermSize; support was removed in 8.0
Java HotSpot(TM) 64-Bit Server VM warning: Ignoring option MaxPermSize; support was removed in 8.0
[info] Loading settings from plugins.sbt,scaffold.sbt ...
[info] Loading project definition from E:\Play\name\project
[info] Updating {file:/E:/Play/name/project/}name-build...
[info] Done updating.
[warn] Found version conflict(s) in library dependencies; some are suspected to be binary incompatible:
[warn]  * org.webjars:webjars-locator-core:0.33 is selected over 0.32
[warn]      +- com.typesafe:npm_2.12:1.2.1                        (depends on 0.32)
[warn]      +- com.typesafe.sbt:sbt-web:1.4.3 (scalaVersion=2.12, sbtVersion=1.0) (depends on 0.32)
[warn]  * org.codehaus.plexus:plexus-utils:3.0.17 is selected over {2.1, 1.5.5}
[warn]      +- org.apache.maven:maven-settings:3.2.2              (depends on 3.0.17)
[warn]      +- org.apache.maven:maven-repository-metadata:3.2.2   (depends on 3.0.17)
[warn]      +- org.apache.maven:maven-aether-provider:3.2.2       (depends on 3.0.17)
[warn]      +- org.apache.maven:maven-model:3.2.2                 (depends on 3.0.17)
[warn]      +- org.apache.maven:maven-core:3.2.2                  (depends on 3.0.17)
[warn]      +- org.apache.maven:maven-artifact:3.2.2              (depends on 3.0.17)
[warn]      +- org.apache.maven:maven-settings-builder:3.2.2      (depends on 3.0.17)
[warn]      +- org.apache.maven:maven-model-builder:3.2.2         (depends on 3.0.17)
[warn]      +- org.sonatype.plexus:plexus-sec-dispatcher:1.3      (depends on 1.5.5)
[warn]      +- org.eclipse.sisu:org.eclipse.sisu.plexus:0.0.0.M5  (depends on 2.1)
[warn]  * com.google.guava:guava:23.0 is selected over {10.0.1, 16.0, 20.0}
[warn]      +- io.methvin:directory-watcher:0.3.2                 (depends on 23.0)
[warn]      +- com.fasterxml.jackson.datatype:jackson-datatype-guava:2.8.8 (depends on 10.0.1)
[warn]      +- org.eclipse.sisu:org.eclipse.sisu.plexus:0.0.0.M5  (depends on 10.0.1)
[warn]      +- com.spotify:docker-client:8.9.0                    (depends on 10.0.1)
[warn] Run 'evicted' to see detailed eviction warnings
[info] Loading settings from build.sbt ...
[info] Set current project to name (in build file:/E:/Play/name/)
[info] Updating {file:/E:/Play/name/}root...
[info] Done updating.
[warn] Found version conflict(s) in library dependencies; some are suspected to be binary incompatible:
[warn]  * com.google.guava:guava:22.0 is selected over {19.0, 20.0}
[warn]      +- com.typesafe.play:play_2.12:2.6.15 ()              (depends on 22.0)
[warn]      +- org.reflections:reflections:0.9.11                 (depends on 20.0)
[warn]      +- com.google.inject:guice:4.1.0                      (depends on 19.0)
[warn]  * com.typesafe.akka:akka-stream_2.12:2.5.11 is selected over 2.4.20
[warn]      +- com.typesafe.play:play-streams_2.12:2.6.15 ()      (depends on 2.5.11)
[warn]      +- com.typesafe.akka:akka-http-core_2.12:10.0.13 ()   (depends on 2.4.20)
[warn]  * com.typesafe.akka:akka-actor_2.12:2.5.11 is selected over 2.4.20
[warn]      +- com.typesafe.play:play_2.12:2.6.15 ()              (depends on 2.5.11)
[warn]      +- com.typesafe.akka:akka-stream_2.12:2.5.11 ()       (depends on 2.5.11)
[warn]      +- com.typesafe.akka:akka-slf4j_2.12:2.5.11 ()        (depends on 2.5.11)
[warn]      +- com.typesafe.akka:akka-parsing_2.12:10.0.13 ()     (depends on 2.4.20)
[warn] Run 'evicted' to see detailed eviction warnings

--- (Running the application, auto-reloading is enabled) ---

[info] p.c.s.AkkaHttpServer - Listening for HTTP on /0:0:0:0:0:0:0:0:9000

(Server started, use Enter to stop and go back to the console...)

У меня на компьютере установлена ​​java 9.0.4 и sbt 1.1.0.

Заранее благодарю за ответы.

1 Ответ

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

Для этих предупреждений о выселении открыта проблема Github .Так как Play является зрелым и широко используемым фреймворком, скорее всего, безопасно игнорировать эти предупреждения.Существует три возможных варианта:

  1. сохранять предупреждения видимыми, пока проект Play не исправит их
  2. скрыть предупреждения с помощью evictionWarningOptions
  3. вручнуюпереопределить зависимости через dependencyOverrides

Лично я бы предложил первый вариант.

Здесь немного о предупреждениях о выселении .Обратите внимание на следующее предупреждение:

[warn]  * com.typesafe.akka:akka-stream_2.12:2.5.11 is selected over 2.4.20
[warn]      +- com.typesafe.play:play-streams_2.12:2.6.15 ()      (depends on 2.5.11)
[warn]      +- com.typesafe.akka:akka-http-core_2.12:10.0.13 ()   (depends on 2.4.20)

Состояния play-streams и akka-http-core оба зависят от akka-stream, однако они зависят от разных его версий.По умолчанию SBT разрешает конфликт, выбирая более высокую версию, а именно 2.5.11.Обратите внимание, что это делает akka-http-core зависимым от 2.5.11, хотя он был скомпилирован только с 2.4.20, другими словами, теперь он зависит от библиотеки из будущего, с которой он никогда не тестировался.Если 2.5.11 не совместимо с 2.4.20, это может привести к ошибкам в проекте.Можно привести аналогию, скажем, у вас есть автомобиль 2001 года выпуска, но затем вы вслепую устанавливаете двигатель с 2002 года. Будет ли автомобиль вести себя так же, как в 2001 году?Если тысячи водителей ездили на этой машине без проблем, это, вероятно, безопасно.

...