0
votes

Getting below error while executing sbt plugin eclipse project build. Command is: sbt eclipse Maintaining scala version 2.12 with plugin file as below line: (./home/user/.sbt/0.13/plugins.sbt)

addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "2.4.0")

And Output getting at console while hitting sbt eclipse is:

[error] Error evaluating task 'scalacOptions'.

[error] Error evaluating task 'externalDependencyClasspath':

[error] Error evaluating task 'update': error

Can anyone help me out with this, in particular where could be the mistake went?

project/build.sbt is as follows:

lazy val root = ( project in file(".") ).
settings(
name := "App_Server",
version := "0.0.0.1-SNAPSHOT",
scalaVersion := "2.12.2",
packageOptions := Seq(ManifestAttributes(
                  ("Implementation-Version", "1.00." + new Timestamp(new Date().getTime)),
                  ("Implementation-Title", "App_Server")))
) dependsOn( locSer ) dependsOn( jobSer ) dependsOn(admin) dependsOn(api) dependsOn(chat) dependsOn(payment) dependsOn(external)

//excludedJars in assembly <<= (fullClasspath in assembly) map { cp =>
//cp filter {x => x.data.getName.matches("slf4j-log4j12-1.7.0.jar") || x.data.getName.matches("slf4j-log4j12-1.4.3.jar")}
//}

assemblyMergeStrategy in assembly := {
case x if Assembly.isConfigFile(x) => MergeStrategy.concat 
case PathList(ps @ _*) if Assembly.isReadme(ps.last) || 
Assembly.isLicenseFile(ps.last) => MergeStrategy.rename
 case PathList("com","google","gson", xs @ _*) => MergeStrategy.first
 case PathList("org","apache","commons","logging", xs @ _*) => 
MergeStrategy.first 
//(xs map {_.toLowerCase}) match {
// case ("google"::"gson"::"exclusionstrategy.class" :: Nil) | ("google"::"gson"::"fieldattributes.class" :: Nil) | ("google"::"gson"::"fieldnamingpolicy.class" :: Nil)  => MergeStrategy.discard
     //case _ => MergeStrategy.deduplicate
//  } 
 case PathList("META-INF", xs @ _*) =>
    (xs map {_.toLowerCase}) match { 
    case  ("maven"::"commons-logging"::"commons-logging"::"pom.properties" :: Nil) | ("maven"::"commons-logging"::"commons-logging"::"pom.xml" :: Nil) => 
MergeStrategy.discard
    case ("manifest.mf" :: Nil) | ("index.list" :: Nil) | ("dependencies" :: Nil)=> MergeStrategy.discard
    case ps @ (x :: xs) if ps.last.endsWith(".sf") || ps.last.endsWith(".dsa") =>MergeStrategy.discard
    case "plexus" :: xs =>MergeStrategy.discard
    case "services" :: xs =>          MergeStrategy.filterDistinctLines
    case ("spring.schemas" :: Nil) | ("spring.handlers" :: Nil) =>          MergeStrategy.filterDistinctLines
    case _ => MergeStrategy.deduplicate
 }
 case _ =>       MergeStrategy.deduplicate
}

Something like this

Edit: I used for convenience a virtual OS for Linux in Windows system.

1
What does "while hitting sbt eclipse" mean?Seth Tisue
I wish I could be more elaborative in all the aspects. So, here while hitting sbt eclipse meant "After execution of sbt eclipse command"sudheer sid

1 Answers

0
votes

You may not get the solution for this unless you find a way to connect between your virtual machine and actual pc. See Network Settings in your virtual machine and check if internet works for that virtual machine. This might helps you!

Also try removing .ivy folders > run sbt again