Scala crashed by code completion library - scala

When I try to execute any expression in Scala REPL it's crashed. Here backtrace
Exception in thread "Thread-1" Exception in thread "main" java.lang.InterruptedException
at java.util.concurrent.SynchronousQueue.put(SynchronousQueue.java:879)
at scala.tools.nsc.interpreter.SplashLoop.run(InteractiveReader.scala:77)
at java.lang.Thread.run(Thread.java:745)
java.lang.NoSuchMethodError: jline.console.completer.CandidateListCompletionHandler.setPrintSpaceAfterFullCompletion(Z)V
at scala.tools.nsc.interpreter.jline.JLineConsoleReader.initCompletion(JLineReader.scala:136)
at scala.tools.nsc.interpreter.jline.InteractiveReader.postInit(JLineReader.scala:51)
at scala.tools.nsc.interpreter.ILoop.$anonfun$process$4(ILoop.scala:899)
at scala.tools.nsc.interpreter.ILoop.$anonfun$process$4$adapted(ILoop.scala:897)
at scala.tools.nsc.interpreter.SplashReader.postInit(InteractiveReader.scala:130)
at scala.tools.nsc.interpreter.ILoop.$anonfun$process$5(ILoop.scala:926)
at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
at scala.tools.nsc.interpreter.ILoop.$anonfun$mumly$1(ILoop.scala:188)
at scala.tools.nsc.interpreter.IMain.beQuietDuring(IMain.scala:209)
at scala.tools.nsc.interpreter.ILoop.mumly(ILoop.scala:185)
at scala.tools.nsc.interpreter.ILoop.loopPostInit$1(ILoop.scala:908)
at scala.tools.nsc.interpreter.ILoop.$anonfun$process$11(ILoop.scala:979)
at scala.tools.nsc.interpreter.ILoop.startup$1(ILoop.scala:947)
at scala.tools.nsc.interpreter.ILoop.$anonfun$process$1(ILoop.scala:990)
at scala.tools.nsc.interpreter.ILoop.process(ILoop.scala:892)
at scala.tools.nsc.MainGenericRunner.runTarget$1(MainGenericRunner.scala:79)
at scala.tools.nsc.MainGenericRunner.run$1(MainGenericRunner.scala:92)
at scala.tools.nsc.MainGenericRunner.process(MainGenericRunner.scala:103)
at scala.tools.nsc.MainGenericRunner$.main(MainGenericRunner.scala:108)
at scala.tools.nsc.MainGenericRunner.main(MainGenericRunner.scala)
expression example: 1 + 1
Scala: Scala code runner version 2.12.0 -- Copyright 2002-2016, LAMP/EPFL and Lightbend, Inc.
Java:
java version "1.8.0_112"
Java(TM) SE Runtime Environment (build 1.8.0_112-b16)
Java HotSpot(TM) 64-Bit Server VM (build 25.112-b16, mixed mode)
OS: macOS 10.12
How can I fix this problem?

I tried to remove all scala's installed to OS and after this install last scala version from brew.
Commands look like this:
brew uninstall sbt
brew uninstall scala
rm -rf /Application/Scala
brew upgrade
brew install scala
So, this help me.

Related

SonerQube doesnt start

Sonarqube Startup script does not start ob ubuntu 16.04
Error log shows:
Encountered an error running main: java.lang.IllegalStateException: SonarQube requires Java 11+ to run
java.lang.IllegalStateException: SonarQube requires Java 11+ to run
at org.sonar.application.App.checkJavaVersion(App.java:93)
at org.sonar.application.App.start(App.java:56)
at org.sonar.application.App.main(App.java:98)
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:498)
at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:240)
at java.lang.Thread.run(Thread.java:748)
<-- Wrapper Stopped
--> Wrapper Started as Console
Launching a JVM...
Startup failed: Timed out waiting for a signal from the JVM.
JVM did not exit on request, terminated
JVM Restarts disabled. Shutting down.
<-- Wrapper Stopped
If i run java -version:
java version "11.0.3" 2019-04-16 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.3+12-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.3+12-LTS, mixed mode)
Open conf/wrapper.conf file
Change wrapper.java.command=java to path where your JavaDK is installed eg. wrapper.java.command=C:\Program Files\Java\jdk-11.0.4\bin\java
I had the same problem a few moments ago, my JAVA_HOME variable pointed to the correct version of my profile, but when I run java -version, it printed 1.8, so I run this command:
update-java-alternatives -l
This showed me all Java versions that were installed on my machine.
After that, I run this another command:
sudo update-java-alternatives -s java-11-oracle
This changed the Java version on my machine and it works just fine.
"Warning Support for Java 8 has been deprecated in SonarQube v7.8 and will be removed in SonarQube v7.9 LTS."
checkout you java -version, and the Supported Platforms requirements: https://docs.sonarqube.org/7.7/requirements/requirements/
Then go to the downloads and choose what is the best for you:
https://www.sonarqube.org/downloads/ (Show all versions)
Check for the JRE version, I have come across the issue where the Java SDK version and JRE -version was different. That may be the issue.
Most user would like to download JDK 11 here as mentioned in recent comments. That should works.
However, I would recommend to install latest version from following link (because you have just downloaded latest sonarqube) for better compatibility.
SDK download link: https://www.oracle.com/java/technologies/javase-downloads.html
FYI,
For mac user,
Install JVM on your machine (I installed it by Homebrew).
brew cask install java
and restarted the sonar by
./sonar.sh restart
it worked for me

How to tell Java to use jline3

Scala newbie and following this blog to use sbt (I have a little Java experience using Eclipse).
sbt is working, however I must have the ncurses issue described here. Instead of downgrading ncurses I'm trying to upgrade jline.
I cloned the new jline3 repo and installed it using mvn.
I don't know how to point java to use the new jline3. Which is the same as saying, "I don't know how to fix this problem with scala / sbt".
OS: Arch: Manjaro
ncurses Version : 6.0+20170902-1
java -version
openjdk version "1.8.0_144"
OpenJDK Runtime Environment (build 1.8.0_144-b01)

:javap -p <classname> returns IlegalArgumentException

Getting below error in Scala REPL
scala> :javap -p Add
java.lang.IllegalArgumentException: requirement failed
at scala.Predef$.require(Predef.scala:264)
at scala.tools.nsc.interpreter.JavapClass$JavapTool$.apply(JavapClass.scala:337)
at scala.tools.nsc.interpreter.JavapClass.tool$lzycompute(JavapClass.scala:37)
at scala.tools.nsc.interpreter.JavapClass.tool(JavapClass.scala:37)
at scala.tools.nsc.interpreter.JavapClass.apply(JavapClass.scala:49)
at scala.tools.nsc.interpreter.ILoop.javapCommand(ILoop.scala:332)
at scala.tools.nsc.interpreter.ILoop.$anonfun$standardCommands$6(ILoop.scala:187)
at scala.tools.nsc.interpreter.LoopCommands$LineCmd.apply(LoopCommands.scala:132)
at scala.tools.nsc.interpreter.LoopCommands.colonCommand(LoopCommands.scala:103)
at scala.tools.nsc.interpreter.LoopCommands.colonCommand$(LoopCommands.scala:101)
at scala.tools.nsc.interpreter.ILoop.colonCommand(ILoop.scala:44)
at scala.tools.nsc.interpreter.ILoop.command(ILoop.scala:696)
at scala.tools.nsc.interpreter.ILoop.processLine(ILoop.scala:416)
at scala.tools.nsc.interpreter.ILoop.loop(ILoop.scala:437)
at scala.tools.nsc.interpreter.ILoop.$anonfun$process$1(ILoop.scala:1012)
at scala.tools.nsc.interpreter.ILoop.process(ILoop.scala:909)
at scala.tools.nsc.MainGenericRunner.runTarget$1(MainGenericRunner.scala:75)
at scala.tools.nsc.MainGenericRunner.run$1(MainGenericRunner.scala:88)
at scala.tools.nsc.MainGenericRunner.process(MainGenericRunner.scala:99)
at scala.tools.nsc.MainGenericRunner$.main(MainGenericRunner.scala:104)
at scala.tools.nsc.MainGenericRunner.main(MainGenericRunner.scala)
That entry seems to have slain the compiler. Shall I replay
your session? I can re-run each line except the last one.
[y/n]
Abandoning crashed session.
Please share if anyone encountered this issue & able to resolve. Below is the versions information. Thanks in advance!
C:\Users\email>scala -version
Scala code runner version 2.12.2 -- Copyright 2002-2017, LAMP/EPFL and Lightbend, Inc.
C:\Users\email>java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
As the answer said Why does installing Scala require additionally installing JDK?
Maybe you just installed Jre not JDK.
To solve the problem, install the corresponding version JDK.
:javap command within Scala REPL invoke the javap tool installed by JAVA SDK via java.util.spi.ToolProvider[ver2.13.1]. Jre don't include those JDK tools such as javap, jdb, jar.

Scala sbt run - "Unsupported major.minor version 52.0"

Things run without any problem when I work on IntelliJ, but when I try to compile and run my Scala code in the command line (with sbt run) the following error message pops up.
[error] (run-main-0) java.lang.UnsupportedClassVersionError: akka/event/LogSource : Unsupported major.minor version 52.0
java.lang.UnsupportedClassVersionError: akka/event/LogSource : Unsupported major.minor version 52.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:803)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2625)
at java.lang.Class.getMethod0(Class.java:2866)
at java.lang.Class.getMethod(Class.java:1676)
I'm using Ubuntu 14.04 LTS.
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.5 LTS
Release: 14.04
Codename: trusty
And my Scala version is 2.9.2.
$ scalac -version
Scala compiler version 2.9.2 -- Copyright 2002-2011, LAMP/EPFL
I barely started learning Scala a few weeks ago, so if anyone could provide some advice on what I should look into, it would be greatly appreciated.
It turned out that there was a mismatch in the JRE version. In the IntelliJ project settings the project SDK was set to be Java 1.8 (on my local machine), whereas JRE 1.7 was installed on the Ubuntu system (an EC2 instance).
In Ubuntu 14.04, the OpenJDK 1.8 is not available by default so the following repository must be added manually. Then the OpenJDK can be installed.
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-8-jre
The default Java version in the system can be changed by running the following command.
sudo update-alternatives --config java
Once I installed openjdk-8-jre and adjusted the default Java version in the system, the sbt run command ran without any issue.
I am using a Mac and trying to learn Scala by following a simple Scala tutorial. I got this error when I am trying to run the app.
Reason:
My installed java version was 8. But on my Terminal the version I was using was 7.
Fix:
I updated the java version to the newest version and then it worked.
Update to correct java version and compile again. It should work fine
I encountered the same proble with CentOS-7.6, here is my solution:
run vim /etc/profile in command line, check your Environment variable to find the jdk version, change it to jdk-1.8. Save and quit safely.
example picture
run /usr/sbin/alternatives --config java, choose version-1.8.
run /usr/sbin/alternatives --config javac, also choose version-1.8.
run source /etc/profile to make the settings work.
By doing the four steps, I was able to run command sbt again without orror.sbt picture
I suddenly started getting this error on Windows 10. Turned out my path had somehow reverted to point to an old version of the java jdk. To be thorough, I first upgraded to the latest jdk (from here for Oracle), which for me was 8u152. I then corrected my path entry to
c:\Program Files\Java\jdk1.8.0_152\bin
(This would be a little different for the 32 bit version.) I then verified that javac -version indeed returned 1.8.0_152 (make sure to open a fresh terminal - an already open one will remember the old path).
And then sbt run worked. (Again remembering to do this from a fresh terminal so path is fresh.)

Android build Ubuntu 16.04.1 required BlockingQueue

I am trying to build the Android source Build: LMY48M (android-5.1.1_r14) on Ubuntu 16.04.1
Got the following error
out/target/common/obj/JAVA_LIBRARIES/android_stubs_current_intermediates/src/java/util/concurrent/ScheduledThreadPoolExecutor.java:9: warning: [unchecked] unchecked conversion
public ScheduledThreadPoolExecutor(int corePoolSize, java.util.concurrent.ThreadFactory threadFactory, java.util.concurrent.RejectedExecutionHandler handler) { super(0,0,0,(java.util.concurrent.TimeUnit)null,(java.util.concurrent.BlockingQueue)null,(java.util.concurrent.ThreadFactory)null,(java.util.concurrent.RejectedExecutionHandler)null); throw new RuntimeException("Stub!"); }
^
required: BlockingQueue<Runnable>
found: BlockingQueue
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
#### make failed to build some targets (01:15:26 (hh:mm:ss)) ####
I am using OpenJDK-7
P.S: I was intented to build on Ubuntu 14.04, however I am using a skylake processor that doesn't have support on Ubuntu 14.04.
However, I successfully build the same Android build on a virtual box running Ubuntu 14.04 on this same machine.
Any help is appreciated.
Update#2
By following #Nir Duan suggestion, I am using OracleJDK7. but as soon I run make -j32 I am getting this error,
You asked for an OpenJDK 7 build but your version is
java version "1.7.0_80" Java(TM) SE Runtime Environment (build 1.7.0_80-b15) Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode).
************************************************************
build/core/main.mk:191: *** stop. Stop.
You're problem is because you need Oracle JDK7 and not OpenJDK-7 when building the source.
Use these commands:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
The result of $ java -version should be this:
java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)
(If not look here and change default java version)