From fe47f01827de8415ba9a9748f7f251d6c88cb521 Mon Sep 17 00:00:00 2001 From: trung Date: Tue, 26 Sep 2017 21:29:31 -0400 Subject: [PATCH 01/17] merged with turpid-monkey/master with some minor refactoring --- pom.xml | 21 +++++++-- .../mdkt/compiler/CompilationException.java | 19 +------- .../mdkt/compiler/InMemoryJavaCompiler.java | 46 +++++++++++++------ .../compiler/InMemoryJavaCompilerTest.java | 31 +++++++++++-- 4 files changed, 78 insertions(+), 39 deletions(-) diff --git a/pom.xml b/pom.xml index 4011db2..177c674 100644 --- a/pom.xml +++ b/pom.xml @@ -18,8 +18,12 @@ 1.6.3 2.5.1 gpg2 + + + 1.7.5 + 4.12 - + Apache License, Version 2.0 @@ -38,7 +42,7 @@ scm:git:git://github.com/trung/InMemoryJavaCompiler scm:git:git@github.com:trung/InMemoryJavaCompiler.git HEAD - + @@ -61,10 +65,21 @@ + + org.slf4j + slf4j-api + ${slf4j.version} + + + org.slf4j + slf4j-jdk14 + ${slf4j.version} + test + junit junit - 4.12 + ${junit.version} test diff --git a/src/main/java/org/mdkt/compiler/CompilationException.java b/src/main/java/org/mdkt/compiler/CompilationException.java index a9825f8..00c7f7f 100644 --- a/src/main/java/org/mdkt/compiler/CompilationException.java +++ b/src/main/java/org/mdkt/compiler/CompilationException.java @@ -1,25 +1,10 @@ package org.mdkt.compiler; -import java.util.List; -import java.util.Locale; -import javax.tools.Diagnostic; -import javax.tools.JavaFileObject; - public class CompilationException extends RuntimeException { private static final long serialVersionUID = 5272588827551900536L; - public CompilationException(List> diags) { - super(buildMessage(diags)); + public CompilationException(String msg) { + super(msg); } - private static String buildMessage(List> diags) { - StringBuffer msg = new StringBuffer(); - msg.append("Unable to compile the source."); - for (Diagnostic diag : diags) { - msg.append("\n").append("[kind=").append(diag.getKind()); - msg.append(", ").append("line=").append(diag.getLineNumber()); - msg.append(", ").append("message=").append(diag.getMessage(Locale.US)).append("]"); - } - return msg.toString(); - } } diff --git a/src/main/java/org/mdkt/compiler/InMemoryJavaCompiler.java b/src/main/java/org/mdkt/compiler/InMemoryJavaCompiler.java index 19f0391..b853590 100644 --- a/src/main/java/org/mdkt/compiler/InMemoryJavaCompiler.java +++ b/src/main/java/org/mdkt/compiler/InMemoryJavaCompiler.java @@ -32,27 +32,28 @@ public InMemoryJavaCompiler useParentClassLoader(ClassLoader parent) { /** * @return the class loader used internally by the compiler */ - public ClassLoader getClassloader() - { + public ClassLoader getClassloader() { return classLoader; } /** * Options used by the compiler, e.g. '-Xlint:unchecked'. + * * @param options * @return */ - public InMemoryJavaCompiler useOptions(String... options) - { + public InMemoryJavaCompiler useOptions(String... options) { this.options = Arrays.asList(options); return this; } /** - * Ignore non-critical compiler output, like unchecked/unsafe operation warnings. + * Ignore non-critical compiler output, like unchecked/unsafe operation + * warnings. + * * @return */ - public InMemoryJavaCompiler useIgnoreWarnings() { + public InMemoryJavaCompiler ignoreWarnings() { ignoreWarnings = true; return this; } @@ -65,7 +66,7 @@ public InMemoryJavaCompiler useIgnoreWarnings() { */ public Map> compileAll() throws Exception { if (sourceCodes.size() == 0) { - throw new Exception("No source code to compile"); + throw new CompilationException("No source code to compile"); } Collection compilationUnits = sourceCodes.values(); CompiledCode[] code; @@ -80,15 +81,30 @@ public Map> compileAll() throws Exception { JavaCompiler.CompilationTask task = javac.getTask(null, fileManager, collector, options, null, compilationUnits); boolean result = task.call(); if (!result || collector.getDiagnostics().size() > 0) { - for (Diagnostic d : collector.getDiagnostics()) { - if (ignoreWarnings && - (d.getKind() == Diagnostic.Kind.NOTE || d.getKind() == Diagnostic.Kind.MANDATORY_WARNING || d.getKind() == Diagnostic.Kind.WARNING)) - continue; - else { - throw new CompilationException(collector.getDiagnostics()); - } + StringBuffer exceptionMsg = new StringBuffer(); + exceptionMsg.append("Unable to compile the source"); + boolean hasWarnings = false; + boolean hasErrors = false; + for (Diagnostic d : collector.getDiagnostics()) { + switch (d.getKind()) { + case NOTE: + case MANDATORY_WARNING: + case WARNING: + hasWarnings = true; + break; + case OTHER: + case ERROR: + default: + hasErrors = true; + break; } - + exceptionMsg.append("\n").append("[kind=").append(d.getKind()); + exceptionMsg.append(", ").append("line=").append(d.getLineNumber()); + exceptionMsg.append(", ").append("message=").append(d.getMessage(Locale.US)).append("]"); + } + if (hasWarnings && !ignoreWarnings || hasErrors) { + throw new CompilationException(exceptionMsg.toString()); + } } Map> classes = new HashMap>(); diff --git a/src/test/java/org/mdkt/compiler/InMemoryJavaCompilerTest.java b/src/test/java/org/mdkt/compiler/InMemoryJavaCompilerTest.java index 1c58c63..c3c16e8 100644 --- a/src/test/java/org/mdkt/compiler/InMemoryJavaCompilerTest.java +++ b/src/test/java/org/mdkt/compiler/InMemoryJavaCompilerTest.java @@ -7,8 +7,12 @@ import org.junit.Rule; import org.junit.Test; import org.junit.rules.ExpectedException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; public class InMemoryJavaCompilerTest { + private static final Logger logger = LoggerFactory.getLogger(InMemoryJavaCompilerTest.class); + @Rule public ExpectedException thrown = ExpectedException.none(); @@ -69,7 +73,8 @@ public void compile_whenError() throws Exception { InMemoryJavaCompiler.newInstance().compile("org.mdkt.HelloClass", sourceCode.toString()); } - @Test public void compile_FailOnWarnings() throws Exception{ + @Test + public void compile_WhenFailOnWarnings() throws Exception { thrown.expect(CompilationException.class); StringBuffer sourceCode = new StringBuffer(); @@ -80,15 +85,33 @@ public void compile_whenError() throws Exception { InMemoryJavaCompiler.newInstance().compile("org.mdkt.HelloClass", sourceCode.toString()); } - @Test public void compile_CompileAndIgnoreWarnings() throws Exception{ + @Test + public void compile_WhenIgnoreWarnings() throws Exception { StringBuffer sourceCode = new StringBuffer(); sourceCode.append("package org.mdkt;\n"); sourceCode.append("public class HelloClass {\n"); sourceCode.append(" public java.util.List hello() { return new java.util.ArrayList(); }"); sourceCode.append("}"); - Class helloClass = InMemoryJavaCompiler.newInstance().useIgnoreWarnings().compile("org.mdkt.HelloClass", sourceCode.toString()); - List res = (List) helloClass.getMethod("hello").invoke(helloClass.newInstance()); + Class helloClass = InMemoryJavaCompiler.newInstance().ignoreWarnings().compile("org.mdkt.HelloClass", sourceCode.toString()); + List res = (List) helloClass.getMethod("hello").invoke(helloClass.newInstance()); Assert.assertEquals(0, res.size()); } + + @Test + public void compile_WhenWarningsAndErrors() throws Exception { + thrown.expect(CompilationException.class); + StringBuffer sourceCode = new StringBuffer(); + + sourceCode.append("package org.mdkt;\n"); + sourceCode.append("public class HelloClass extends xxx {\n"); + sourceCode.append(" public java.util.List hello() { return new java.util.ArrayList(); }"); + sourceCode.append("}"); + try { + InMemoryJavaCompiler.newInstance().compile("org.mdkt.HelloClass", sourceCode.toString()); + } catch (Exception e) { + logger.info("Exception caught: {}", e); + throw e; + } + } } From d255195048c213ae6988ccd8ae9732c7dee34051 Mon Sep 17 00:00:00 2001 From: trung Date: Mon, 9 Oct 2017 20:56:10 -0400 Subject: [PATCH 02/17] [maven-release-plugin] prepare release InMemoryJavaCompiler-1.3.0 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 177c674..10d41a8 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ org.mdkt.compiler InMemoryJavaCompiler - 1.3.0-SNAPSHOT + 1.3.0 jar https://github.com/trung/InMemoryJavaCompiler @@ -41,7 +41,7 @@ https://github.com/trung/InMemoryJavaCompiler scm:git:git://github.com/trung/InMemoryJavaCompiler scm:git:git@github.com:trung/InMemoryJavaCompiler.git - HEAD + InMemoryJavaCompiler-1.3.0 From d5f55b2206985735cdb980e660a808f8ac0e20b9 Mon Sep 17 00:00:00 2001 From: trung Date: Mon, 9 Oct 2017 20:56:15 -0400 Subject: [PATCH 03/17] [maven-release-plugin] prepare for next development iteration --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 10d41a8..7142e14 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ org.mdkt.compiler InMemoryJavaCompiler - 1.3.0 + 1.4.0-SNAPSHOT jar https://github.com/trung/InMemoryJavaCompiler @@ -41,7 +41,7 @@ https://github.com/trung/InMemoryJavaCompiler scm:git:git://github.com/trung/InMemoryJavaCompiler scm:git:git@github.com:trung/InMemoryJavaCompiler.git - InMemoryJavaCompiler-1.3.0 + HEAD From 6af8ec1db4b98ab31682bbb801762d352ff12a4b Mon Sep 17 00:00:00 2001 From: trung Date: Mon, 9 Oct 2017 20:58:52 -0400 Subject: [PATCH 04/17] [maven-release-plugin] rollback the release of InMemoryJavaCompiler-1.3.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 7142e14..177c674 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ org.mdkt.compiler InMemoryJavaCompiler - 1.4.0-SNAPSHOT + 1.3.0-SNAPSHOT jar https://github.com/trung/InMemoryJavaCompiler From c0170d70066e8539df322169968544be2d9c47c4 Mon Sep 17 00:00:00 2001 From: trung Date: Mon, 9 Oct 2017 21:02:28 -0400 Subject: [PATCH 05/17] disable javadocs lint for java8 --- pom.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pom.xml b/pom.xml index 177c674..e02dbd6 100644 --- a/pom.xml +++ b/pom.xml @@ -143,6 +143,9 @@ jar + + -Xdoclint:none + From 9ee698537684f8091f72a22753c7bd0b85205aee Mon Sep 17 00:00:00 2001 From: trung Date: Mon, 9 Oct 2017 21:02:52 -0400 Subject: [PATCH 06/17] [maven-release-plugin] prepare release InMemoryJavaCompiler-1.3.0 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index e02dbd6..1f9afd2 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ org.mdkt.compiler InMemoryJavaCompiler - 1.3.0-SNAPSHOT + 1.3.0 jar https://github.com/trung/InMemoryJavaCompiler @@ -41,7 +41,7 @@ https://github.com/trung/InMemoryJavaCompiler scm:git:git://github.com/trung/InMemoryJavaCompiler scm:git:git@github.com:trung/InMemoryJavaCompiler.git - HEAD + InMemoryJavaCompiler-1.3.0 From 2ad119a53040b5f5132dcce5ea343e4d290631e4 Mon Sep 17 00:00:00 2001 From: trung Date: Mon, 9 Oct 2017 21:03:08 -0400 Subject: [PATCH 07/17] [maven-release-plugin] rollback the release of InMemoryJavaCompiler-1.3.0 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 1f9afd2..e02dbd6 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ org.mdkt.compiler InMemoryJavaCompiler - 1.3.0 + 1.3.0-SNAPSHOT jar https://github.com/trung/InMemoryJavaCompiler @@ -41,7 +41,7 @@ https://github.com/trung/InMemoryJavaCompiler scm:git:git://github.com/trung/InMemoryJavaCompiler scm:git:git@github.com:trung/InMemoryJavaCompiler.git - InMemoryJavaCompiler-1.3.0 + HEAD From fe492abcb485bc67d014644875ff35cb759feea6 Mon Sep 17 00:00:00 2001 From: trung Date: Mon, 9 Oct 2017 21:04:09 -0400 Subject: [PATCH 08/17] [maven-release-plugin] prepare release InMemoryJavaCompiler-1.3.0 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index e02dbd6..1f9afd2 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ org.mdkt.compiler InMemoryJavaCompiler - 1.3.0-SNAPSHOT + 1.3.0 jar https://github.com/trung/InMemoryJavaCompiler @@ -41,7 +41,7 @@ https://github.com/trung/InMemoryJavaCompiler scm:git:git://github.com/trung/InMemoryJavaCompiler scm:git:git@github.com:trung/InMemoryJavaCompiler.git - HEAD + InMemoryJavaCompiler-1.3.0 From 33b4ea23fd3e01406b6d09045705e590d5af04ca Mon Sep 17 00:00:00 2001 From: trung Date: Mon, 9 Oct 2017 21:04:14 -0400 Subject: [PATCH 09/17] [maven-release-plugin] prepare for next development iteration --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 1f9afd2..3e344d3 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ org.mdkt.compiler InMemoryJavaCompiler - 1.3.0 + 1.4.0-SNAPSHOT jar https://github.com/trung/InMemoryJavaCompiler @@ -41,7 +41,7 @@ https://github.com/trung/InMemoryJavaCompiler scm:git:git://github.com/trung/InMemoryJavaCompiler scm:git:git@github.com:trung/InMemoryJavaCompiler.git - InMemoryJavaCompiler-1.3.0 + HEAD From 5134756cab8c08f66c76ac3a40f2b2291c42efa3 Mon Sep 17 00:00:00 2001 From: trung Date: Mon, 9 Oct 2017 21:10:15 -0400 Subject: [PATCH 10/17] updated new version in README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 161b9c7..5cceaf8 100644 --- a/README.md +++ b/README.md @@ -26,5 +26,5 @@ Maven dependency: org.mdkt.compiler InMemoryJavaCompiler - 1.2 + 1.3.0 From 77f905b385d8cc2a50ed45afa0c92a6239e6f302 Mon Sep 17 00:00:00 2001 From: trung Date: Mon, 9 Oct 2017 21:11:48 -0400 Subject: [PATCH 11/17] updated README --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 5cceaf8..a24cda7 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ After taking huge effort to look for example on the internet and found nothing w E.g.: - StringBuffer sourceCode = new StringBuffer(); + StringBuilder sourceCode = new StringBuilder(); sourceCode.append("package org.mdkt;\n"); sourceCode.append("public class HelloClass {\n"); sourceCode.append(" public String hello() { return \"hello\"; }"); @@ -17,6 +17,8 @@ E.g.: Class helloClass = InMemoryJavaCompiler.newInstance().compile("org.mdkt.HelloClass", sourceCode.toString()); +If you are looking for more examples, please look at unit tests in the `src/test/java` folder + Artifact is pushed to Sonatype OSS Releases Repository https://oss.sonatype.org/content/repositories/releases/ From 06b9509be14ff31840295780eddb8db9cbc2b4f6 Mon Sep 17 00:00:00 2001 From: trung Date: Mon, 9 Oct 2017 21:15:37 -0400 Subject: [PATCH 12/17] added code coverage with coverall.io --- .coveralls.yml | 1 + 1 file changed, 1 insertion(+) create mode 100644 .coveralls.yml diff --git a/.coveralls.yml b/.coveralls.yml new file mode 100644 index 0000000..d920940 --- /dev/null +++ b/.coveralls.yml @@ -0,0 +1 @@ +repo_token: pJZtK8sVBABjJsHA1KIp07IkEaOdNl7nc From 9c43b88b46e39c4be829e1676724260d936259c3 Mon Sep 17 00:00:00 2001 From: trung Date: Mon, 9 Oct 2017 21:16:29 -0400 Subject: [PATCH 13/17] added code coverage with coverall.io --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index a24cda7..7492e8b 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ **Update 09/22/2017**: I've been silent for long time (I'm into Golang lately hence putting Java aside) despite the fact that there are lots of interests to make this mini tool better. I'll kick off my effort to improve this tool from now on by reviewing outstanding issues and PRs -# InMemoryJavaCompiler [![Build Status](https://travis-ci.org/trung/InMemoryJavaCompiler.svg?branch=master)](https://travis-ci.org/trung/InMemoryJavaCompiler) +# InMemoryJavaCompiler [![Build Status](https://travis-ci.org/trung/InMemoryJavaCompiler.svg?branch=master)](https://travis-ci.org/trung/InMemoryJavaCompiler) [![Coverage Status](https://coveralls.io/repos/github/trung/InMemoryJavaCompiler/badge.svg?branch=master)](https://coveralls.io/github/trung/InMemoryJavaCompiler?branch=master) Samples with utility classes to compile java source code in memory After taking huge effort to look for example on the internet and found nothing work. I decided to create a very simple version. From 3eb528800539f150c3d3a6fed4ef670f359ce4f2 Mon Sep 17 00:00:00 2001 From: trung Date: Mon, 9 Oct 2017 21:27:23 -0400 Subject: [PATCH 14/17] code coverage with codecov --- .coveralls.yml | 1 - .travis.yml | 2 ++ README.md | 2 +- pom.xml | 16 ++++++++++++++-- 4 files changed, 17 insertions(+), 4 deletions(-) delete mode 100644 .coveralls.yml diff --git a/.coveralls.yml b/.coveralls.yml deleted file mode 100644 index d920940..0000000 --- a/.coveralls.yml +++ /dev/null @@ -1 +0,0 @@ -repo_token: pJZtK8sVBABjJsHA1KIp07IkEaOdNl7nc diff --git a/.travis.yml b/.travis.yml index df6bcdc..f7f142a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,3 +1,5 @@ language: java jdk: - oraclejdk8 +after_success: + - bash <(curl -s https://codecov.io/bash) diff --git a/README.md b/README.md index 7492e8b..e545d09 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ **Update 09/22/2017**: I've been silent for long time (I'm into Golang lately hence putting Java aside) despite the fact that there are lots of interests to make this mini tool better. I'll kick off my effort to improve this tool from now on by reviewing outstanding issues and PRs -# InMemoryJavaCompiler [![Build Status](https://travis-ci.org/trung/InMemoryJavaCompiler.svg?branch=master)](https://travis-ci.org/trung/InMemoryJavaCompiler) [![Coverage Status](https://coveralls.io/repos/github/trung/InMemoryJavaCompiler/badge.svg?branch=master)](https://coveralls.io/github/trung/InMemoryJavaCompiler?branch=master) +# InMemoryJavaCompiler [![Build Status](https://travis-ci.org/trung/InMemoryJavaCompiler.svg?branch=master)](https://travis-ci.org/trung/InMemoryJavaCompiler) [![codecov](https://codecov.io/gh/trung/InMemoryJavaCompiler/branch/master/graph/badge.svg)](https://codecov.io/gh/trung/InMemoryJavaCompiler) Samples with utility classes to compile java source code in memory After taking huge effort to look for example on the internet and found nothing work. I decided to create a very simple version. diff --git a/pom.xml b/pom.xml index 3e344d3..8c34d98 100644 --- a/pom.xml +++ b/pom.xml @@ -18,12 +18,12 @@ 1.6.3 2.5.1 gpg2 - + 1.7.5 4.12 - + Apache License, Version 2.0 @@ -86,6 +86,18 @@ + + org.codehaus.mojo + cobertura-maven-plugin + 2.7 + + + html + xml + + + + org.apache.maven.plugins maven-compiler-plugin From 5f2a9bab682d62ef0450960b2c3fe38d377563c3 Mon Sep 17 00:00:00 2001 From: trung Date: Mon, 9 Oct 2017 21:28:24 -0400 Subject: [PATCH 15/17] code coverage with codecov --- .travis.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.travis.yml b/.travis.yml index f7f142a..2da370c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,8 @@ language: java jdk: - oraclejdk8 + +script: "mvn cobertura:cobertura" + after_success: - bash <(curl -s https://codecov.io/bash) From f817e8e49b8f941b8c9c0b7e7d93ab0cfc386002 Mon Sep 17 00:00:00 2001 From: fossabot Date: Sun, 12 Nov 2017 19:17:51 -0800 Subject: [PATCH 16/17] Add license scan report and status --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index e545d09..d046cba 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ **Update 09/22/2017**: I've been silent for long time (I'm into Golang lately hence putting Java aside) despite the fact that there are lots of interests to make this mini tool better. I'll kick off my effort to improve this tool from now on by reviewing outstanding issues and PRs # InMemoryJavaCompiler [![Build Status](https://travis-ci.org/trung/InMemoryJavaCompiler.svg?branch=master)](https://travis-ci.org/trung/InMemoryJavaCompiler) [![codecov](https://codecov.io/gh/trung/InMemoryJavaCompiler/branch/master/graph/badge.svg)](https://codecov.io/gh/trung/InMemoryJavaCompiler) +[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.amrom.workers.dev%2Ftrung%2FInMemoryJavaCompiler.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.amrom.workers.dev%2Ftrung%2FInMemoryJavaCompiler?ref=badge_shield) Samples with utility classes to compile java source code in memory After taking huge effort to look for example on the internet and found nothing work. I decided to create a very simple version. @@ -30,3 +31,7 @@ Maven dependency: InMemoryJavaCompiler 1.3.0 + + +## License +[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.amrom.workers.dev%2Ftrung%2FInMemoryJavaCompiler.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.amrom.workers.dev%2Ftrung%2FInMemoryJavaCompiler?ref=badge_large) \ No newline at end of file From d84c404975dc308ee5a418c5af8a6629c5e6c995 Mon Sep 17 00:00:00 2001 From: Nguyen Kien Trung Date: Mon, 13 Nov 2017 09:15:30 -0500 Subject: [PATCH 17/17] Update README.md --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index d046cba..076619e 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ **Update 09/22/2017**: I've been silent for long time (I'm into Golang lately hence putting Java aside) despite the fact that there are lots of interests to make this mini tool better. I'll kick off my effort to improve this tool from now on by reviewing outstanding issues and PRs -# InMemoryJavaCompiler [![Build Status](https://travis-ci.org/trung/InMemoryJavaCompiler.svg?branch=master)](https://travis-ci.org/trung/InMemoryJavaCompiler) [![codecov](https://codecov.io/gh/trung/InMemoryJavaCompiler/branch/master/graph/badge.svg)](https://codecov.io/gh/trung/InMemoryJavaCompiler) -[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.amrom.workers.dev%2Ftrung%2FInMemoryJavaCompiler.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.amrom.workers.dev%2Ftrung%2FInMemoryJavaCompiler?ref=badge_shield) +# InMemoryJavaCompiler [![Build Status](https://travis-ci.org/trung/InMemoryJavaCompiler.svg?branch=master)](https://travis-ci.org/trung/InMemoryJavaCompiler) [![codecov](https://codecov.io/gh/trung/InMemoryJavaCompiler/branch/master/graph/badge.svg)](https://codecov.io/gh/trung/InMemoryJavaCompiler) [![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.amrom.workers.dev%2Ftrung%2FInMemoryJavaCompiler.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.amrom.workers.dev%2Ftrung%2FInMemoryJavaCompiler?ref=badge_shield) + Samples with utility classes to compile java source code in memory After taking huge effort to look for example on the internet and found nothing work. I decided to create a very simple version. @@ -34,4 +34,4 @@ Maven dependency: ## License -[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.amrom.workers.dev%2Ftrung%2FInMemoryJavaCompiler.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.amrom.workers.dev%2Ftrung%2FInMemoryJavaCompiler?ref=badge_large) \ No newline at end of file +[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.amrom.workers.dev%2Ftrung%2FInMemoryJavaCompiler.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.amrom.workers.dev%2Ftrung%2FInMemoryJavaCompiler?ref=badge_large)