walterhiggins / ScriptCraft

Write Minecraft Plugins in JavaScript.
MIT License
1.84k stars 379 forks source link

No JavaScript Engine available. ScriptCraft will not work without Javascript. #452

Open DanielGlzp opened 3 years ago

DanielGlzp commented 3 years ago

Hi i have this error when start server, it´s like sv doesnt find scriptcraft folder and doesnt recognize any javascript code. Error: No JavaScript Engine available. ScriptCraft will not work without Javascript.

DumbGameMaker commented 3 years ago

same. nothing about a js engine in docs but i guess you could try installing node somewhere?

DumbGameMaker commented 3 years ago

https://github.com/walterhiggins/ScriptCraft/commit/5650c495177df174ecb81d43f02959bd70a698ba that commit fixed it. you need to compile it yourself. I would do it for you but it's good practice not to use a version a random person (me) from the internet compiled cuz there is no way you can trust me to not put malware in it

MrDoomBringer commented 3 years ago

This is likely because your java version is greater than java 8. You can check this by typing "java -version" into a command prompt. Java versions greater than 8 will get this error because they don't come with javascript pre-installed anymore.

Personally, I have 2 JDKs installed, one for scriptcraft and one for everything else. image Whenever I want to run my scriptcraft server at the command prompt, I specify the right version of java by running this command: image in a powershell terminal. Note that I'm using the ` key to escape the space character in "Program Files".

quartze commented 3 years ago

This is likely because your java version is greater than java 8. You can check this by typing "java -version" into a command prompt. Java versions greater than 8 will get this error because they don't come with javascript pre-installed anymore.

Personally, I have 2 JDKs installed, one for scriptcraft and one for everything else. image Whenever I want to run my scriptcraft server at the command prompt, I specify the right version of java by running this command: image in a powershell terminal. Note that I'm using the ` key to escape the space character in "Program Files".

It's not working for me. Still have the same error like author. "No JavaScript Engine available". Using jdk1.8.0_271. Note: you can writeProgra~1 or Progra~2 than Program` FIles.

MrDoomBringer commented 3 years ago

@quartze Hmm, weird. Just for sanity's sake, when you enter "C:\Progra~1\Java\jdk_1.8.0_271\bin\java -version" you get the expected version number, right? In that case, I would try uninstalling and reinstalling java? Not certain what your issue might be if it still persists.

Tacoalarmclock commented 3 years ago

I'm having the same issue. When I run /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/bin/java -version, the result() is:

openjdk version "1.8.0_275"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_275-b01)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.275-b01, mixed mode)

So I get the right version of java. And I just installed it today(used jdk 15 before). I have a feeling I might have to explicitly add a javascript engine, like grall or nashorn.

MrDoomBringer commented 3 years ago

@Tacoalarmclock well you're using openJDK, rather than oracle's normal jdk. That might be your problem (as although OpenJDK and oracle's jdk are functionally the same, I don't know if OpenJDK comes with javascript prepackaged as well)

MangoSwirl commented 3 years ago

5650c49 that commit fixed it. you need to compile it yourself. I would do it for you but it's good practice not to use a version a random person (me) from the internet compiled cuz there is no way you can trust me to not put malware in it

I'm having the same issue. How could I compile this myself?

jwulf commented 3 years ago

There is a build in the zip file release here: https://github.com/Magikcraft/MagikCraft/releases

spustlik commented 3 years ago

As I poorly understand java, problem is that Spigot server needs at least java 16, but javascript engine (Nashorn) was removed in java 15. I have no idea how to solve it

ediloren commented 3 years ago

I patched ScriptCraft to work with GraalVM with the GraalJS JavaScript engine.

Tested under Win10, GraalVM R21.2.0, SpigotMC R1.17.1.

You may try it using the fork https://github.com/ediloren/ScriptCraft. Includes instructions in the updated 'ReadMe'.

willmil11 commented 1 year ago

Everyone youll not regret it to fix that use java 8.0.302-open you can install with sdkman

joaoalbertocsjunior commented 1 year ago

Reinstall spigot server with command: java -jar -Xmx1G -Djdk.net.URLClassPath.disableClassPathURLCheck=true BuildTools.jar --rev 1.16.5

openjdk-8-jdk needed

FreshImmuc commented 1 day ago

Hey @ediloren I tried the alreadx existent jar in your repository's target folder. It doesn't work. Then i tried building it myself but some issues occured. I added asm libs to it and built it successfully. But even with building your repo myself i didn't get it to work. Is there any chance you still have the working jar yourself?