From 68f6c191095a4e1e2454db25e0435b41f086d1e5 Mon Sep 17 00:00:00 2001 From: timis1 <12120641+timis1@users.noreply.github.com> Date: Wed, 21 Jun 2023 06:52:00 +0300 Subject: [PATCH] =?UTF-8?q?JAVA-18148=20Create=20a=20new=20java-nashorn=20?= =?UTF-8?q?project=20from=20the=20existing=20langua=E2=80=A6=20(#14268)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * JAVA-18148 Create a new java-nashorn project from the existing language-interop * JAVA-18148 Cleanup the project to contain just the python related language interop --------- Co-authored-by: timis1 --- java-nashorn/README.md | 7 ++++ java-nashorn/pom.xml | 30 ++++++++++++++++ .../python/ScriptEngineManagerUtils.java | 34 +++++++++++++++++++ .../src/main/resources/js/bind.js | 0 .../src/main/resources/js/locations.js | 0 .../src/main/resources/js/math_module.js | 0 .../src/main/resources/js/no_such.js | 0 .../src/main/resources/js/script.js | 0 .../src/main/resources/js/trim.js | 0 .../src/main/resources/js/typed_arrays.js | 0 java-nashorn/src/main/resources/logback.xml | 13 +++++++ .../interop/javascript/NashornUnitTest.java | 0 language-interop/README.md | 1 - language-interop/pom.xml | 2 +- pom.xml | 6 ++-- 15 files changed, 89 insertions(+), 4 deletions(-) create mode 100644 java-nashorn/README.md create mode 100644 java-nashorn/pom.xml create mode 100644 java-nashorn/src/main/java/com/baeldung/language/interop/python/ScriptEngineManagerUtils.java rename {language-interop => java-nashorn}/src/main/resources/js/bind.js (100%) rename {language-interop => java-nashorn}/src/main/resources/js/locations.js (100%) rename {language-interop => java-nashorn}/src/main/resources/js/math_module.js (100%) rename {language-interop => java-nashorn}/src/main/resources/js/no_such.js (100%) rename {language-interop => java-nashorn}/src/main/resources/js/script.js (100%) rename {language-interop => java-nashorn}/src/main/resources/js/trim.js (100%) rename {language-interop => java-nashorn}/src/main/resources/js/typed_arrays.js (100%) create mode 100644 java-nashorn/src/main/resources/logback.xml rename {language-interop => java-nashorn}/src/test/java/com/baeldung/language/interop/javascript/NashornUnitTest.java (100%) diff --git a/java-nashorn/README.md b/java-nashorn/README.md new file mode 100644 index 0000000000..b4394fa94b --- /dev/null +++ b/java-nashorn/README.md @@ -0,0 +1,7 @@ +## Language Interop + +This module contains articles about Java interop with other language integrations. + +### Relevant Articles: + +- [Introduction to Nashorn](http://www.baeldung.com/java-nashorn) diff --git a/java-nashorn/pom.xml b/java-nashorn/pom.xml new file mode 100644 index 0000000000..1c1236d77b --- /dev/null +++ b/java-nashorn/pom.xml @@ -0,0 +1,30 @@ + + + 4.0.0 + java-nashorn + 0.0.1-SNAPSHOT + java-nashorn + + + com.baeldung + parent-modules + 1.0.0-SNAPSHOT + + + + java-nashorn + + + src/main/resources + true + + + src/test/resources + true + + + + + \ No newline at end of file diff --git a/java-nashorn/src/main/java/com/baeldung/language/interop/python/ScriptEngineManagerUtils.java b/java-nashorn/src/main/java/com/baeldung/language/interop/python/ScriptEngineManagerUtils.java new file mode 100644 index 0000000000..7bf07cf598 --- /dev/null +++ b/java-nashorn/src/main/java/com/baeldung/language/interop/python/ScriptEngineManagerUtils.java @@ -0,0 +1,34 @@ +package com.baeldung.language.interop.python; + +import java.util.List; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.script.ScriptEngineFactory; +import javax.script.ScriptEngineManager; + +public class ScriptEngineManagerUtils { + + private static final Logger LOGGER = LoggerFactory.getLogger(ScriptEngineManagerUtils.class); + + private ScriptEngineManagerUtils() { + } + + public static void listEngines() { + ScriptEngineManager manager = new ScriptEngineManager(); + List engines = manager.getEngineFactories(); + + for (ScriptEngineFactory engine : engines) { + LOGGER.info("Engine name: {}", engine.getEngineName()); + LOGGER.info("Version: {}", engine.getEngineVersion()); + LOGGER.info("Language: {}", engine.getLanguageName()); + + LOGGER.info("Short Names:"); + for (String names : engine.getNames()) { + LOGGER.info(names); + } + } + } + +} diff --git a/language-interop/src/main/resources/js/bind.js b/java-nashorn/src/main/resources/js/bind.js similarity index 100% rename from language-interop/src/main/resources/js/bind.js rename to java-nashorn/src/main/resources/js/bind.js diff --git a/language-interop/src/main/resources/js/locations.js b/java-nashorn/src/main/resources/js/locations.js similarity index 100% rename from language-interop/src/main/resources/js/locations.js rename to java-nashorn/src/main/resources/js/locations.js diff --git a/language-interop/src/main/resources/js/math_module.js b/java-nashorn/src/main/resources/js/math_module.js similarity index 100% rename from language-interop/src/main/resources/js/math_module.js rename to java-nashorn/src/main/resources/js/math_module.js diff --git a/language-interop/src/main/resources/js/no_such.js b/java-nashorn/src/main/resources/js/no_such.js similarity index 100% rename from language-interop/src/main/resources/js/no_such.js rename to java-nashorn/src/main/resources/js/no_such.js diff --git a/language-interop/src/main/resources/js/script.js b/java-nashorn/src/main/resources/js/script.js similarity index 100% rename from language-interop/src/main/resources/js/script.js rename to java-nashorn/src/main/resources/js/script.js diff --git a/language-interop/src/main/resources/js/trim.js b/java-nashorn/src/main/resources/js/trim.js similarity index 100% rename from language-interop/src/main/resources/js/trim.js rename to java-nashorn/src/main/resources/js/trim.js diff --git a/language-interop/src/main/resources/js/typed_arrays.js b/java-nashorn/src/main/resources/js/typed_arrays.js similarity index 100% rename from language-interop/src/main/resources/js/typed_arrays.js rename to java-nashorn/src/main/resources/js/typed_arrays.js diff --git a/java-nashorn/src/main/resources/logback.xml b/java-nashorn/src/main/resources/logback.xml new file mode 100644 index 0000000000..7d900d8ea8 --- /dev/null +++ b/java-nashorn/src/main/resources/logback.xml @@ -0,0 +1,13 @@ + + + + + %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n + + + + + + + + \ No newline at end of file diff --git a/language-interop/src/test/java/com/baeldung/language/interop/javascript/NashornUnitTest.java b/java-nashorn/src/test/java/com/baeldung/language/interop/javascript/NashornUnitTest.java similarity index 100% rename from language-interop/src/test/java/com/baeldung/language/interop/javascript/NashornUnitTest.java rename to java-nashorn/src/test/java/com/baeldung/language/interop/javascript/NashornUnitTest.java diff --git a/language-interop/README.md b/language-interop/README.md index f4f2fc0816..458f34a119 100644 --- a/language-interop/README.md +++ b/language-interop/README.md @@ -5,4 +5,3 @@ This module contains articles about Java interop with other language integration ### Relevant Articles: - [How to Call Python From Java](https://www.baeldung.com/java-working-with-python) -- [Introduction to Nashorn](http://www.baeldung.com/java-nashorn) diff --git a/language-interop/pom.xml b/language-interop/pom.xml index 57dd8bdd9a..95d1183e8b 100644 --- a/language-interop/pom.xml +++ b/language-interop/pom.xml @@ -41,7 +41,7 @@ - 2.7.2 + 2.7.3b1 1.3 diff --git a/pom.xml b/pom.xml index e1d97532c6..e96f6200d9 100644 --- a/pom.xml +++ b/pom.xml @@ -356,7 +356,6 @@ - language-interop libraries-jdk8 @@ -370,6 +369,7 @@ persistence-modules/java-cassandra persistence-modules/spring-data-cassandra-reactive persistence-modules/spring-data-neo4j + java-nashorn @@ -534,7 +534,6 @@ - language-interop libraries-jdk8 @@ -547,6 +546,7 @@ persistence-modules/java-cassandra persistence-modules/spring-data-cassandra-reactive persistence-modules/spring-data-neo4j + java-nashorn @@ -937,6 +937,7 @@ xml xml-2 image-processing + language-interop @@ -1204,6 +1205,7 @@ xml xml-2 image-processing + language-interop