Got io.prediction#predictionio-commons_2.10;0.7.0-SNAPSHOT: not found error

71 views
Skip to first unread message

Henry Saputra

unread,
Jan 15, 2014, 12:50:51 AM1/15/14
to predicti...@googlegroups.com
Hi Guys,

I am trying to build the develop branch with ./bin/build.sh but always got the missing dependency error:

[error] (*:update) sbt.ResolveException: unresolved dependency: io.prediction#predictionio-commons_2.10;0.7.0-SNAPSHOT: not found
[error] unresolved dependency: io.prediction#predictionio-output_2.10;0.7.0-SNAPSHOT: not found

Shouldnt this module being built by the sbt flow?

- Henry

Donald Szeto

unread,
Jan 15, 2014, 12:53:31 AM1/15/14
to predicti...@googlegroups.com
Hi Henry,

Could you please attach the full console output since starting bin/build.sh? You are right that it should have been built and published by sbt. By the way, are you using sbt 0.13.x?

Thanks,
Donald

Henry Saputra

unread,
Jan 28, 2014, 11:33:26 AM1/28/14
to predicti...@googlegroups.com
Somehow I sent the email to you personally and I guess you would like me to send it to group list instead.

Here is the snippet of the last statements of the console output:

[info] Packaging /home/hsaputra/open/hsaputra/PredictionIO/tools/users/target/scala-2.10/users_2.10-0.6.7-sources.jar ...
[info] Done packaging.
[info] Wrote /home/hsaputra/open/hsaputra/PredictionIO/tools/users/target/scala-2.10/users_2.10-0.6.7.pom
[info] Main Scala API documentation to /home/hsaputra/open/hsaputra/PredictionIO/tools/users/target/scala-2.10/api...
[info] Packaging /home/hsaputra/open/hsaputra/PredictionIO/tools/users/target/scala-2.10/users_2.10-0.6.7.jar ...
[info] Done packaging.
model contains 6 documentable templates
[info] Main Scala API documentation successful.
[info] Packaging /home/hsaputra/open/hsaputra/PredictionIO/tools/users/target/scala-2.10/users_2.10-0.6.7-javadoc.jar ...
[info] Done packaging.
[info] Wrote /home/hsaputra/open/hsaputra/PredictionIO/commons/target/scala-2.10/predictionio-commons_2.10-0.6.7.pom
[success] Total time: 2 s, completed Jan 28, 2014 8:17:37 AM
Going to build PredictionIO Admin Server...
[warn] The global sbt directory is now versioned and is located at /home/hsaputra/.sbt/0.13.
[warn]   You are seeing this warning because there is global configuration in /home/hsaputra/.sbt but not in /home/hsaputra/.sbt/0.13.
[warn]   The global sbt directory may be changed via the sbt.global.base system property.
[info] Loading project definition from /home/hsaputra/open/hsaputra/PredictionIO/servers/admin/project
[info] Set current project to predictionio-admin (in build file:/home/hsaputra/open/hsaputra/PredictionIO/servers/admin/)
[info] Updating {file:/home/hsaputra/open/hsaputra/PredictionIO/servers/admin/}admin...
[info] Resolving io.prediction#predictionio-commons_2.10;0.6.7 ...
[warn] module not found: io.prediction#predictionio-commons_2.10;0.6.7
[warn] ==== local: tried
[warn]   /home/hsaputra/open/hsaputra/PredictionIO/vendors/play-2.2.0/repository/local/io.prediction/predictionio-commons_2.10/0.6.7/ivys/ivy.xml
[warn] ==== sbt-releases-repo: tried
[warn] ==== sbt-plugins-repo: tried
[warn] ==== maven-central: tried
[warn] ==== Typesafe Releases Repository: tried
[info] Resolving io.prediction#predictionio-output_2.10;0.6.7 ...
[warn] module not found: io.prediction#predictionio-output_2.10;0.6.7
[warn] ==== local: tried
[warn]   /home/hsaputra/open/hsaputra/PredictionIO/vendors/play-2.2.0/repository/local/io.prediction/predictionio-output_2.10/0.6.7/ivys/ivy.xml
[warn] ==== sbt-releases-repo: tried
[warn] ==== sbt-plugins-repo: tried
[warn] ==== maven-central: tried
[warn] ==== Typesafe Releases Repository: tried
[info] Resolving org.fusesource.jansi#jansi;1.4 ...
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] ::          UNRESOLVED DEPENDENCIES         ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: io.prediction#predictionio-commons_2.10;0.6.7: not found
[warn] :: io.prediction#predictionio-output_2.10;0.6.7: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
sbt.ResolveException: unresolved dependency: io.prediction#predictionio-commons_2.10;0.6.7: not found
unresolved dependency: io.prediction#predictionio-output_2.10;0.6.7: not found
at sbt.IvyActions$.sbt$IvyActions$$resolve(IvyActions.scala:213)
at sbt.IvyActions$$anonfun$update$1.apply(IvyActions.scala:122)
at sbt.IvyActions$$anonfun$update$1.apply(IvyActions.scala:121)
at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:116)
at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:116)
at sbt.IvySbt$$anonfun$withIvy$1.apply(Ivy.scala:104)
at sbt.IvySbt.sbt$IvySbt$$action$1(Ivy.scala:51)
at sbt.IvySbt$$anon$3.call(Ivy.scala:60)
at xsbt.boot.Locks$GlobalLock.withChannel$1(Locks.scala:98)
at xsbt.boot.Locks$GlobalLock.xsbt$boot$Locks$GlobalLock$$withChannelRetries$1(Locks.scala:81)
at xsbt.boot.Locks$GlobalLock$$anonfun$withFileLock$1.apply(Locks.scala:102)
at xsbt.boot.Using$.withResource(Using.scala:11)
at xsbt.boot.Using$.apply(Using.scala:10)
at xsbt.boot.Locks$GlobalLock.ignoringDeadlockAvoided(Locks.scala:62)
at xsbt.boot.Locks$GlobalLock.withLock(Locks.scala:52)
at xsbt.boot.Locks$.apply0(Locks.scala:31)
at xsbt.boot.Locks$.apply(Locks.scala:28)
at sbt.IvySbt.withDefaultLogger(Ivy.scala:60)
at sbt.IvySbt.withIvy(Ivy.scala:101)
at sbt.IvySbt.withIvy(Ivy.scala:97)
at sbt.IvySbt$Module.withModule(Ivy.scala:116)
at sbt.IvyActions$.update(IvyActions.scala:121)
at sbt.Classpaths$$anonfun$sbt$Classpaths$$work$1$1.apply(Defaults.scala:1144)
at sbt.Classpaths$$anonfun$sbt$Classpaths$$work$1$1.apply(Defaults.scala:1142)
at sbt.Classpaths$$anonfun$doWork$1$1$$anonfun$73.apply(Defaults.scala:1165)
at sbt.Classpaths$$anonfun$doWork$1$1$$anonfun$73.apply(Defaults.scala:1163)
at sbt.Tracked$$anonfun$lastOutput$1.apply(Tracked.scala:35)
at sbt.Classpaths$$anonfun$doWork$1$1.apply(Defaults.scala:1167)
at sbt.Classpaths$$anonfun$doWork$1$1.apply(Defaults.scala:1162)
at sbt.Tracked$$anonfun$inputChanged$1.apply(Tracked.scala:45)
at sbt.Classpaths$.cachedUpdate(Defaults.scala:1170)
at sbt.Classpaths$$anonfun$updateTask$1.apply(Defaults.scala:1135)
at sbt.Classpaths$$anonfun$updateTask$1.apply(Defaults.scala:1113)
at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47)
at sbt.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:42)
at sbt.std.Transform$$anon$4.work(System.scala:64)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:18)
at sbt.Execute.work(Execute.scala:244)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:160)
at sbt.CompletionService$$anon$2.call(CompletionService.scala:30)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
[error] (*:update) sbt.ResolveException: unresolved dependency: io.prediction#predictionio-commons_2.10;0.6.7: not found
[error] unresolved dependency: io.prediction#predictionio-output_2.10;0.6.7: not found
[error] Total time: 16 s, completed Jan 28, 2014 8:18:21 AM

Hope this could help. If not I could send the whole stack.

I keep getting the same error. Other projects were built fine in my env with sbt


Thanks for your help.

- Henry

Donald Szeto

unread,
Jan 28, 2014, 7:39:06 PM1/28/14
to predicti...@googlegroups.com
Hi Henry,

Looks like for some reason your SBT is not applying this:


I notice that there is a warning from your output:

[warn] The global sbt directory is now versioned and is located at /home/hsaputra/.sbt/0.13.
[warn]   You are seeing this warning because there is global configuration in /home/hsaputra/.sbt but not in /home/hsaputra/.sbt/0.13.
[warn]   The global sbt directory may be changed via the sbt.global.base system property.

Does it happen that your have a custom configuration that is disabling or pointing your local Maven repo to somewhere else? Basically the bin/build.sh will publish both commons and output to local Maven, and rely on Play's SBT to resolve them from local Maven.

Thanks,
Donald

Henry Saputra

unread,
Jan 29, 2014, 7:49:10 AM1/29/14
to predicti...@googlegroups.com
Thanks for the hint Donald, I do not see anything weird in the ~/.sbt directory.
Tried to copy the repositories file to 0.13 but still same error.

In develop branch, I saw that the /bin/build.sh  does not actually send command to build /commons directory.
Just want to make sure if interpret the script correctly.
I did see the script tries to build /servers/XXX and other directories:

# Build admin server
echo "Going to build PredictionIO Admin Server..."
cd $BASE/servers/admin
$PLAY $CLEAN update compile

# Build API server
echo "Going to build PredictionIO API Server..."
cd $BASE/servers/api
$PLAY $CLEAN update compile

# Build scheduler server
echo "Going to build PredictionIO Scheduler Server..."
cd $BASE/servers/scheduler
$PLAY $CLEAN update compile


- Henry

Donald Szeto

unread,
Jan 29, 2014, 7:52:15 AM1/29/14
to predicti...@googlegroups.com
https://github.com/PredictionIO/PredictionIO/blob/develop/bin/build.sh#L31

Targets "commons/publish" and "output/publish" should publish both modules to your local Maven. Were you able to see any relevant messages from your console since the start of the build script?

Thanks,
Donald

Henry Saputra

unread,
Jan 29, 2014, 8:16:59 AM1/29/14
to predicti...@googlegroups.com
Interesting, seems like my "local" points to some play directory:

[warn] module not found: io.prediction#predictionio-commons_2.10;0.6.7
[warn] ==== local: tried
[warn]   /home/hsaputra/open/hsaputra/PredictionIO/vendors/play-2.2.0/repository/local/io.prediction/predictionio-commons_2.10/0.6.7/ivys/ivy.xml

I have .sbt/repositories file that list all target repos:

[repositories]
  local
  sbt-releases-repo: http://repo.typesafe.com/typesafe/ivy-releases/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]
  sbt-plugins-repo: http://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]

I would assume local means my maven local directory, apparently it was not the case.

After remove the repositories file looks like the compilation finally found the common and output libs.

Thanks for the help Donald. It is time to revisit the sbt manual again =P

- Henry

Donald Szeto

unread,
Jan 29, 2014, 8:37:00 AM1/29/14
to predicti...@googlegroups.com
Good to know it's working for you now. Play does modify the local Ivy repository to its own, but should not touch local Maven repository's location. Maybe your configuration modified it in a way that was not very obvious.

Please let us know if you have any questions. :)

Thanks,
Donald
Reply all
Reply to author
Forward
0 new messages