JBPM2 external dependencies versions not resolved properly in SBT - sbt

I'm trying to use jbpm2 6.0.0.Final in my sbt-based project.
Some problems occure with external dependencies. Artifact version is written using pom's variable reference.
I can add those missing dependencies by hand and it will fix the matter but I still need to guest what versions are needed.
Any idea what is the best solution to this problem?
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: org.eclipse.jdt.core.compiler#ecj;${version.org.eclipse.jdt.core.compiler}: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::

In jBPM we use the jbpm-bom to define all the version, look at here, it might help: https://github.com/droolsjbpm/droolsjbpm-build-bootstrap

Related

Where is the origin for the sbt error below?

The problem looks like below:
:: problems summary ::
:::: WARNINGS
module not found: org.scala-sbt#sbt;0.13.7
==== local: tried
/home/jiakui/.ivy2/local/org.scala-sbt/sbt/0.13.7/ivys/ivy.xml
-- artifact org.scala-sbt#sbt;0.13.7!sbt.jar:
/home/jiakui/.ivy2/local/org.scala-sbt/sbt/0.13.7/jars/sbt.jar
==== typesafe-ivy-releases: tried
https://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/sbt/0.13.7/ivys/ivy.xml
==== Maven Central: tried
https://repo1.maven.org/maven2/org/scala-sbt/sbt/0.13.7/sbt-0.13.7.pom
-- artifact org.scala-sbt#sbt;0.13.7!sbt.jar:
https://repo1.maven.org/maven2/org/scala-sbt/sbt/0.13.7/sbt-0.13.7.jar
::::::::::::::::::::::::::::::::::::::::::::::
:: UNRESOLVED DEPENDENCIES ::
::::::::::::::::::::::::::::::::::::::::::::::
:: org.scala-sbt#sbt;0.13.7: not found
::::::::::::::::::::::::::::::::::::::::::::::
:::: ERRORS
Server access Error: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target url=https://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/sbt/0.13.7/ivys/ivy.xml
Server access Error: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target url=https://repo1.maven.org/maven2/org/scala-sbt/sbt/0.13.7/sbt-0.13.7.pom
Server access Error: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target url=https://repo1.maven.org/maven2/org/scala-sbt/sbt/0.13.7/sbt-0.13.7.jar
:: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS
unresolved dependency: org.scala-sbt#sbt;0.13.7: not found
Error during sbt execution: Error retrieving required libraries
(see /home/jiakui/.sbt/boot/update.log for complete log)
Error: Could not retrieve sbt 0.13.7
+ exit 1
I finally found a workaround.
Run this at command line:
sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure
The issue seems to be related to this one: https://github.com/docker-library/openjdk/issues/19 (at least for me).
It seem, as far as I understand, that this bug can get back at JDK9 =/

tracing an sbt eviction regarding plugins.sbt

I seem to be unable finding the root cause of the first eviction seen below. As seen below, running evicted does not provide details relevant to it.
This all occurs after having added in project/plugins.sbt:
libraryDependencies += "io.spray" %% "spray-json" % "1.3.1"
[warn] There may be incompatibilities among your library dependencies.
[warn] Here are some of the libraries that were evicted:
[warn] * io.spray:spray-json_2.10:1.2.6 -> 1.3.1
[warn] Run 'evicted' to see detailed eviction warnings
[projectName] $ evicted
[info] Resolving jline#jline;2.12.1 ...
[info] Done updating.
[warn] There may be incompatibilities among your library dependencies.
[warn] Here are some of the libraries that were evicted:
[warn] * com.googlecode.efficient-java-matrix-library:ejml:0.23 -> 0.19 (caller: edu.arizona.sista:processors:3.3, edu.stanford.nlp:stanford-corenlp:3.3.1)
[warn] * com.google.guava:guava:(15.0, 13.0.1) -> 16.0.1 (caller: org.sorm-framework:sorm:0.3.16, com.jolbox:bonecp:0.8.0.RELEASE, com.typesafe.play:play-ws_2.11:2.3.7)
[warn] * xml-apis:xml-apis:(2.0.2, 1.3.03) -> 1.4.01 (caller: xalan:xalan:2.7.0, xerces:xercesImpl:2.11.0, xom:xom:1.2.5, com.io7m.xom:xom:1.2.10)
[warn] * io.netty:netty:(3.9.2.Final, 3.6.3.Final) -> 3.9.3.Final (caller: com.ning:async-http-client:1.8.14, com.typesafe.netty:netty-http-pipelining:1.1.2, com.typesafe.play:play_2.11:2.3.7)
[success] Total time: 2 s, completed Apr 9, 2015 8:04:11 PM
At runtime, I get this crash without even trying to use spray-json, so something really isn't right about how this dependency is managed or evicted in my sbt build:
[error] (web-assets:less::jstaskJsOptions) java.lang.NoSuchMethodError: spray.json.JsArray.<init>(Lscala/collection/immutable/List;)V
There is no version 1.2.6 of this dependency explicitly defined in my build.sbt in the first place, maybe it is required by other plugins there, but how can that be traced without the eviction details? How can I fathom the details of this mysterious eviction?
You can use
show externalDependencyClasspath
to get the toString representation that includes all transitive dependencies but it looks quite cumbersome. I suggest to install the sbt-dependency-graph plugin which makes the dependencyTree task available, that shows you your full classpath in a readable format.

Unresolved Dependencies while building Spark1.3.0 with Sbt

I am trying to build spark 1.3.O on standalone Ubuntu 14.04. I am using the sbt command i.e. "sbt/sbt assembly" to build it. This command works pretty good with spark version 1.1 however, it gives following error with spark 1.3.0. Any help or suggestions to resolve this would highly be appreciated.
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: org.apache.spark#spark-network-common_2.10;1.3.0: configuration not p ublic in org.apache.spark#spark-network-common_2.10;1.3.0: 'test'. It was requir ed from org.apache.spark#spark-network-shuffle_2.10;1.3.0 test
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn]
[warn] Note: Unresolved dependencies path:
[warn] org.apache.spark:spark-network-common_2.10:1.3.0 ((com.typesafe. sbt.pom.MavenHelper) MavenHelper.scala#L76)
[warn] +- org.apache.spark:spark-network-shuffle_2.10:1.3.0
sbt.ResolveException: unresolved dependency: org.apache.spark#spark-network-comm on_2.10;1.3.0: configuration not public in org.apache.spark#spark-network-common _2.10;1.3.0: 'test'. It was required from org.apache.spark#spark-network-shuffle _2.10;1.3.0 test
at sbt.IvyActions$.sbt$IvyActions$$resolve(IvyActions.scala:278)
at sbt.IvyActions$$anonfun$updateEither$1.apply(IvyActions.scala:175)
at sbt.IvyActions$$anonfun$updateEither$1.apply(IvyActions.scala:157)
at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:151)
at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:151)
at sbt.IvySbt$$anonfun$withIvy$1.apply(Ivy.scala:128)
at sbt.IvySbt.sbt$IvySbt$$action$1(Ivy.scala:56)
at sbt.IvySbt$$anon$4.call(Ivy.scala:64)
at xsbt.boot.Locks$GlobalLock.withChannel$1(Locks.scala:93)
at xsbt.boot.Locks$GlobalLock.xsbt$boot$Locks$GlobalLock$$withChannelRet ries$1(Locks.scala:78)
at xsbt.boot.Locks$GlobalLock$$anonfun$withFileLock$1.apply(Locks.scala: 97)
at xsbt.boot.Using$.withResource(Using.scala:10)
at xsbt.boot.Using$.apply(Using.scala:9)
at xsbt.boot.Locks$GlobalLock.ignoringDeadlockAvoided(Locks.scala:58)
at xsbt.boot.Locks$GlobalLock.withLock(Locks.scala:48)
at xsbt.boot.Locks$.apply0(Locks.scala:31)
at xsbt.boot.Locks$.apply(Locks.scala:28)
at sbt.IvySbt.withDefaultLogger(Ivy.scala:64)
at sbt.IvySbt.withIvy(Ivy.scala:123)
at sbt.IvySbt.withIvy(Ivy.scala:120)
at sbt.IvySbt$Module.withModule(Ivy.scala:151)
at sbt.IvyActions$.updateEither(IvyActions.scala:157)
at sbt.Classpaths$$anonfun$sbt$Classpaths$$work$1$1.apply(Defaults.scala :1318)
at sbt.Classpaths$$anonfun$sbt$Classpaths$$work$1$1.apply(Defaults.scala :1315)
at sbt.Classpaths$$anonfun$doWork$1$1$$anonfun$85.apply(Defaults.scala:1 345)
at sbt.Classpaths$$anonfun$doWork$1$1$$anonfun$85.apply(Defaults.scala:1 343)
at sbt.Tracked$$anonfun$lastOutput$1.apply(Tracked.scala:35)
at sbt.Classpaths$$anonfun$doWork$1$1.apply(Defaults.scala:1348)
at sbt.Classpaths$$anonfun$doWork$1$1.apply(Defaults.scala:1342)
at sbt.Tracked$$anonfun$inputChanged$1.apply(Tracked.scala:45)
at sbt.Classpaths$.cachedUpdate(Defaults.scala:1360)
at sbt.Classpaths$$anonfun$updateTask$1.apply(Defaults.scala:1300)
at sbt.Classpaths$$anonfun$updateTask$1.apply(Defaults.scala:1275)
at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47)
at sbt.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:40)
at sbt.std.Transform$$anon$4.work(System.scala:63)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:22 6)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:22 6)
at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:17)
at sbt.Execute.work(Execute.scala:235)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:226)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:226)
at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestric tions.scala:159)
at sbt.CompletionService$$anon$2.call(CompletionService.scala:28)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:51 1)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor. java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor .java:617)
at java.lang.Thread.run(Thread.java:745)
[error] (network-shuffle/*:update) sbt.ResolveException: unresolved dependency: org.apache.spark#spark-network-common_2.10;1.3.0: configuration not public in or g.apache.spark#spark-network-common_2.10;1.3.0: 'test'. It was required from org .apache.spark#spark-network-shuffle_2.10;1.3.0 test
Are you using JDK 8.0 ? If so, this may be an instance of javadoc setting some warnings ('missing' javadoc for some modules) as errors. Have a look there:
https://issues.apache.org/jira/browse/SPARK-4543
https://issues.apache.org/jira/browse/SPARK-4193
The PR that fixes it is there:
https://github.com/apache/spark/pull/3058

Sbt install: You probably access the destination server through a proxy server that is not well configured

Getting net.java.dev.jna jna 3.2.3 ...
You probably access the destination server through a proxy server that is not well configured.
You probably access the destination server through a proxy server that is not well configured.
You probably access the destination server through a proxy server that is not well configured.
:: problems summary ::
:::: WARNINGS
Host repo.typesafe.com not found. url=http://repo.typesafe.com/typesafe/ivy-releases/net.java.dev.jna/jna/3.2.3/ivys/ivy.xml
Host repo1.maven.org not found. url=http://repo1.maven.org/maven2/net/java/dev/jna/jna/3.2.3/jna-3.2.3.pom
Host oss.sonatype.org not found. url=https://oss.sonatype.org/content/repositories/snapshots/net/java/dev/jna/jna/3.2.3/jna-3.2.3.pom
module not found: net.java.dev.jna#jna;3.2.3
==== local: tried
/root/.ivy2/local/net.java.dev.jna/jna/3.2.3/ivys/ivy.xml
==== typesafe-ivy-releases: tried
http://repo.typesafe.com/typesafe/ivy-releases/net.java.dev.jna/jna/3.2.3/ivys/ivy.xml
==== Maven Central: tried
http://repo1.maven.org/maven2/net/java/dev/jna/jna/3.2.3/jna-3.2.3.pom
==== sonatype-snapshots: tried
https://oss.sonatype.org/content/repositories/snapshots/net/java/dev/jna/jna/3.2.3/jna-3.2.3.pom
::::::::::::::::::::::::::::::::::::::::::::::
:: UNRESOLVED DEPENDENCIES ::
::::::::::::::::::::::::::::::::::::::::::::::
:: net.java.dev.jna#jna;3.2.3: not found
::::::::::::::::::::::::::::::::::::::::::::::
:: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS
unresolved dependency: net.java.dev.jna#jna;3.2.3: not found
Error during sbt execution: Error retrieving required libraries
(see /root/.sbt/boot/update.log for complete log)
Error: Could not retrieve jna 3.2.3
I think the answer is found in the log:
You probably access the destination server through a proxy server that is not well configured.
If you can use another proxy server you can set it in the sbt start script:
-Dhttp.proxyHost=<proxy> -Dhttp.proxyPort=<port>
For me, this problem was caused by a temporary issue with our company's DNS server. I mention this only because this question is one of the top results when searching online for the above error message.
In WINDOWS environment, simply add following line in the sbt/conf/sbtconfig.txt
-Dhttp.proxyHost=PROXYHOST
-Dhttp.proxyPort=PROXYPORT
-Dhttp.proxyUser=USERNAME
-Dhttp.proxyPassword=XXXX
or the Https equivalent
-Dhttps.proxyHost=PROXYHOST
-Dhttps.proxyPort=PROXYPORT
-Dhttps.proxyUser=USERNAME
-Dhttps.proxyPassword=XXXX
or simply set following variable on dos command prompt
set JAVA_OPTS=-Dhttp.proxyHost=XXXXXXX -Dhttp.proxyPort=YYYY -Dhttp.proxySet=true -Dhttps.proxyHost=XXXXXXX -Dhttps.proxyPort=YYYY -Dhttps.proxySet=true
Just change the web location http to https in ivysettings.xml file.

SBT dependency on opennlp-tools

If I have
libraryDependencies += "org.apache.opennlp" % "opennlp-tools" % "1.5.2-incubating"
in build.sbt, I get an error:
[warn] module not found: jwnl#jwnl;1.3.3
[warn] ==== local: tried
[warn] C:\Users\Alexey\.ivy2/local/jwnl/jwnl/1.3.3/ivys/ivy.xml
[warn] ==== public: tried
[warn] http://repo1.maven.org/maven2/jwnl/jwnl/1.3.3/jwnl-1.3.3.pom
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: jwnl#jwnl;1.3.3: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[error] {file:/E:/OpenCorporaSegmenter/}default-af76b3/*:update: sbt.ResolveExce
ption: unresolved dependency: jwnl#jwnl;1.3.3: not found
[error] Total time: 2 s, completed 22.02.2013 11:53:16
The reason is clearly https://issues.apache.org/jira/browse/OPENNLP-510, but replacing the dependency with
libraryDependencies += "org.cleartk" % "cleartk-opennlp-tools" % "0.10.2"
(which excludes JWNL), as suggested in the comments there, still produces the same error. Is there a way to avoid this problem?
"To exclude certain transitive dependencies of a dependency, use the excludeAll or exclude methods..." — see http://www.scala-sbt.org/release/docs/Detailed-Topics/Library-Management.html for further details.

Resources