Removed javaengine and more misc fixes.

Source: L2jUnity free release
This commit is contained in:
MobiusDev
2016-10-22 09:57:31 +00:00
parent f9f769d0ef
commit f1557eb587
24 changed files with 975 additions and 113 deletions

View File

@@ -21,6 +21,7 @@ import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.LinkedList;
import java.util.List;
@@ -29,6 +30,7 @@ import java.util.Map.Entry;
import java.util.Objects;
import java.util.Properties;
import java.util.ServiceLoader;
import java.util.Set;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -170,7 +172,7 @@ public final class ScriptEngineManager
checkExistingFile("ScriptList", SCRIPT_LIST_FILE);
final Map<IExecutionContext, List<Path>> files = new LinkedHashMap<>();
final List<String> extWithoutEngine = new LinkedList<>();
final Set<String> extWithoutEngine = new HashSet<>();
Files.lines(SCRIPT_LIST_FILE).forEach(line ->
{
@@ -202,21 +204,14 @@ public final class ScriptEngineManager
final IExecutionContext engine = getEngineByExtension(ext);
if (engine == null)
{
if (!extWithoutEngine.contains(ext))
if (extWithoutEngine.add(ext))
{
extWithoutEngine.add(ext);
_log.warning("ScriptEngine: No engine registered for extension " + ext + "!");
}
return;
}
List<Path> ll = files.get(engine);
if (ll == null)
{
ll = new LinkedList<>();
files.put(engine, ll);
}
ll.add(sourceFile);
files.computeIfAbsent(engine, k -> new LinkedList<>()).add(sourceFile);
});
for (Entry<IExecutionContext, List<Path>> entry : files.entrySet())

View File

@@ -23,6 +23,7 @@ import java.nio.file.Path;
import java.util.Arrays;
import java.util.LinkedHashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.logging.Logger;
@@ -99,8 +100,6 @@ public final class JavaExecutionContext extends AbstractExecutionContext<JavaScr
try (final ScriptingFileManager fileManager = new ScriptingFileManager(getScriptingEngine().getCompiler().getStandardFileManager(fileManagerDiagnostics, null, StandardCharsets.UTF_8)))
{
final StringWriter strOut = new StringWriter();
final PrintWriter out = new PrintWriter(strOut);
final LinkedList<String> options = new LinkedList<>();
addOptionIfNotNull(options, getProperty("source"), "-source");
@@ -133,12 +132,14 @@ public final class JavaExecutionContext extends AbstractExecutionContext<JavaScr
}
// we really need an iterable of files or strings
final LinkedList<String> sourcePathStrings = new LinkedList<>();
final List<String> sourcePathStrings = new LinkedList<>();
for (Path sourcePath : sourcePaths)
{
sourcePathStrings.add(sourcePath.toString());
}
final StringWriter strOut = new StringWriter();
final PrintWriter out = new PrintWriter(strOut);
final boolean compilationSuccess = getScriptingEngine().getCompiler().getTask(out, fileManager, compilationDiagnostics, options, null, fileManager.getJavaFileObjectsFromStrings(sourcePathStrings)).call();
if (!compilationSuccess)
{
@@ -169,8 +170,8 @@ public final class JavaExecutionContext extends AbstractExecutionContext<JavaScr
final ClassLoader parentClassLoader = determineScriptParentClassloader();
LinkedHashMap<Path, Throwable> executionFailures = new LinkedHashMap<>();
Iterable<ScriptingOutputFileObject> compiledClasses = fileManager.getCompiledClasses();
final Map<Path, Throwable> executionFailures = new LinkedHashMap<>();
final Iterable<ScriptingOutputFileObject> compiledClasses = fileManager.getCompiledClasses();
for (final Path sourcePath : sourcePaths)
{
boolean found = false;