Hi,
I am new to scala and this forum. I have a project which has scala and java modules. I am trying to generate scala documentation for the entire project using IntelliJ Idea Community Edition.
I have defined the following dependency in my maven file. Is it the version incompatibility?
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.10.5</version>
<scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.scala-lang/scala-reflect -->
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-reflect</artifactId>
<version>2.11.1</version>
</dependency>
When I run scaladoc, it throws the following error. Can someone please help?
"C:\Program Files\Java\jdk1.8.0_45\bin\java" "-javaagent:C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 2017.1\lib\idea_rt.jar=59038:C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 2017.1\bin" -classpath "C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 2017.1\lib\idea_rt.jar;C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 2017.1\lib\util.jar" -Dfile.encoding=UTF-8 com.intellij.rt.execution.CommandLineWrapper C:\Users\ritwik\AppData\Local\Temp\idea_classpath scala.tools.nsc.ScalaDoc @C:\Users\RITWIK~1\AppData\Local\Temp\scaladocfileargs613953797411499296.tmp
Exception in thread "main" java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at com.intellij.rt.execution.CommandLineWrapper.main(CommandLineWrapper.java:65)
Caused by: java.lang.AbstractMethodError: scala.reflect.internal.settings.MutableSettings.strictInference()Lscala/reflect/internal/settings/MutableSettings$SettingValue;
at scala.reflect.internal.tpe.GlbLubs$class.$init$(GlbLubs.scala:17)
at scala.reflect.internal.SymbolTable.<init>(SymbolTable.scala:16)
at scala.tools.nsc.symtab.SymbolTable.<init>(SymbolTable.scala:9)
at scala.tools.nsc.Global.<init>(Global.scala:36)
at scala.tools.nsc.doc.DocFactory$compiler$.<init>(DocFactory.scala:36)
at scala.tools.nsc.doc.DocFactory.compiler$lzycompute(DocFactory.scala:36)
at scala.tools.nsc.doc.DocFactory.compiler(DocFactory.scala:36)
at scala.tools.nsc.doc.DocFactory.makeUniverse(DocFactory.scala:57)
at scala.tools.nsc.doc.DocFactory.generate$1(DocFactory.scala:125)
at scala.tools.nsc.doc.DocFactory.document(DocFactory.scala:137)
at scala.tools.nsc.ScalaDoc.process(ScalaDoc.scala:49)
at scala.tools.nsc.ScalaDoc$.main(ScalaDoc.scala:75)
at scala.tools.nsc.ScalaDoc.main(ScalaDoc.scala)
... 5 more
When I change scala-reflect to version 2.12.1, the error changes to the following:
"C:\Program Files\Java\jdk1.8.0_45\bin\java" "-javaagent:C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 2017.1\lib\idea_rt.jar=61629:C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 2017.1\bin" -classpath "C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 2017.1\lib\idea_rt.jar;C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 2017.1\lib\util.jar" -Dfile.encoding=UTF-8 com.intellij.rt.execution.CommandLineWrapper C:\Users\ritwik\AppData\Local\Temp\idea_classpath scala.tools.nsc.ScalaDoc @C:\Users\RITWIK~1\AppData\Local\Temp\scaladocfileargs2851192433360025564.tmp
Exception in thread "main" java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at com.intellij.rt.execution.CommandLineWrapper.main(CommandLineWrapper.java:65)
Caused by: java.lang.NoSuchMethodError: scala.collection.GenTraversableOnce.$init$(Lscala/collection/GenTraversableOnce;)V
at scala.reflect.io.AbstractFile.<init>(AbstractFile.scala:90)
at scala.reflect.io.PlainFile.<init>(PlainFile.scala:21)
at scala.reflect.io.AbstractFile$.getDirectory(AbstractFile.scala:45)
at scala.reflect.io.AbstractFile$.getDirectory(AbstractFile.scala:37)
at scala.tools.nsc.settings.MutableSettings$OutputDirs.setSingleOutput(MutableSettings.scala:269)
at scala.tools.nsc.settings.MutableSettings$OutputSetting.value_$eq(MutableSettings.scala:515)
at scala.tools.nsc.settings.MutableSettings$OutputSetting.<init>(MutableSettings.scala:512)
at scala.tools.nsc.settings.MutableSettings.OutputSetting(MutableSettings.scala:221)
at scala.tools.nsc.settings.ScalaSettings$class.$init$(ScalaSettings.scala:64)
at scala.tools.nsc.settings.MutableSettings.<init>(MutableSettings.scala:19)
at scala.tools.nsc.Settings.<init>(Settings.scala:12)
at scala.tools.nsc.doc.Settings.<init>(Settings.scala:16)
at scala.tools.nsc.ScalaDoc.process(ScalaDoc.scala:23)
at scala.tools.nsc.ScalaDoc$.main(ScalaDoc.scala:75)
at scala.tools.nsc.ScalaDoc.main(ScalaDoc.scala)
... 5 more
Regards,
Ritwik