Próbuję zbudować Scala projektu/iskry w IntelliJ IDEA z następującym build.sbt
:Ostrzeżenia budując Scala projektu/Spark z SBT
name := "try"
version := "1.0"
scalaVersion := "2.11.8"
val sparkVersion = "2.2.0"
resolvers ++= Seq(
"apache-snapshots" at "http://repository.apache.org/snapshots/"
)
libraryDependencies ++= Seq(
"org.apache.spark" %% "spark-core" % sparkVersion,
"org.apache.spark" %% "spark-sql" % sparkVersion,
"org.apache.spark" %% "spark-mllib" % sparkVersion,
"org.apache.spark" %% "spark-streaming" % sparkVersion,
"org.apache.spark" %% "spark-hive" % sparkVersion
)
i coraz kilka ostrzeżeń:
8/6/17
1:29 PM SBT project import
[warn] Found version conflict(s) in library dependencies; some are suspected to be binary incompatible:
[warn] * io.netty:netty:3.9.9.Final is selected over {3.6.2.Final, 3.7.0.Final}
[warn] +- org.apache.spark:spark-core_2.11:2.2.0 (depends on 3.9.9.Final)
[warn] +- org.apache.zookeeper:zookeeper:3.4.6 (depends on 3.6.2.Final)
[warn] +- org.apache.hadoop:hadoop-hdfs:2.6.5 (depends on 3.6.2.Final)
[warn] * commons-net:commons-net:2.2 is selected over 3.1
[warn] +- org.apache.spark:spark-core_2.11:2.2.0 (depends on 2.2)
[warn] +- org.apache.hadoop:hadoop-common:2.6.5 (depends on 3.1)
[warn] * com.google.guava:guava:11.0.2 is selected over {12.0.1, 16.0.1}
[warn] +- org.apache.hadoop:hadoop-yarn-client:2.6.5 (depends on 11.0.2)
[warn] +- org.apache.hadoop:hadoop-yarn-api:2.6.5 (depends on 11.0.2)
[warn] +- org.apache.hadoop:hadoop-yarn-common:2.6.5
mam kilka, być może głupi, pytania:
- Czy istnieje lepszy sposób na strukturę
build.sbt
(dodać o ter resolvers np.?), abym mógł pozbyć się ostrzeżeń? - Czy w ogóle należy dbać o ostrzeżenia?
dobra odpowiedź. Zastanawiam się też za każdym razem, gdy napotykam takie ostrzeżenie, dlaczego niektórzy twórcy lib deklarują zależności od lib w taki sposób, który generuje takie ostrzeżenia. Kiedy widzę to, myślę "chłopaki, czy próbowałeś zbudować swój własny projekt w SBT? Nie widziałeś tych ostrzeżeń?" :) –
@Eugene Dzięki za wysiłek, ale mój SBT zbudowany nadal się nie udaje (zobacz log w UPDATE). Jakieś pomysły? –
@SergeyBushmanov: Użyj '" io.netty "%" netty "%" 3.9.9.Final "', następnie uruchom 'reload' i' update' w konsoli 'sbt'. – chunjef