From 2ed77f57ef2b5195e743db464975e8ba46531369 Mon Sep 17 00:00:00 2001 From: Sylwester Lachiewicz Date: Mon, 22 May 2023 14:29:26 +0200 Subject: [PATCH] Drop dependency to plexus-container-default - replace logging with slf4j --- plexus-compiler-api/pom.xml | 5 ++++ .../plexus/compiler/AbstractCompiler.java | 9 ++++--- .../manager/DefaultCompilerManager.java | 2 -- .../compiler/eclipse/EclipseJavaCompiler.java | 26 +++++++++---------- .../compiler/javac/InProcessCompiler.java | 3 +-- .../plexus/compiler/javac/JavacCompiler.java | 16 ++++++------ .../compiler/javac/JavaxToolsCompiler.java | 8 +++--- pom.xml | 7 ----- 8 files changed, 37 insertions(+), 39 deletions(-) diff --git a/plexus-compiler-api/pom.xml b/plexus-compiler-api/pom.xml index 3c89eb39..456eab59 100644 --- a/plexus-compiler-api/pom.xml +++ b/plexus-compiler-api/pom.xml @@ -18,6 +18,11 @@ org.codehaus.plexus plexus-utils + + org.slf4j + slf4j-api + 1.7.36 + org.junit.jupiter junit-jupiter-api diff --git a/plexus-compiler-api/src/main/java/org/codehaus/plexus/compiler/AbstractCompiler.java b/plexus-compiler-api/src/main/java/org/codehaus/plexus/compiler/AbstractCompiler.java index 1463346f..7565f365 100644 --- a/plexus-compiler-api/src/main/java/org/codehaus/plexus/compiler/AbstractCompiler.java +++ b/plexus-compiler-api/src/main/java/org/codehaus/plexus/compiler/AbstractCompiler.java @@ -24,8 +24,9 @@ * SOFTWARE. */ -import org.codehaus.plexus.logging.AbstractLogEnabled; import org.codehaus.plexus.util.DirectoryScanner; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.io.File; import java.io.IOException; @@ -39,9 +40,9 @@ * @author Trygve Laugstøl */ public abstract class AbstractCompiler - extends AbstractLogEnabled implements Compiler { + protected Logger log = LoggerFactory.getLogger ( getClass() ); protected static final String EOL = System.lineSeparator(); protected static final String PS = System.getProperty( "path.separator" ); @@ -280,11 +281,11 @@ private static String getCanonicalPath( File origFile ) protected void logCompiling( String[] sourceFiles, CompilerConfiguration config ) { - if ( ( getLogger() != null ) && getLogger().isInfoEnabled() ) + if ( log.isInfoEnabled() ) { String to = ( config.getWorkingDirectory() == null ) ? config.getOutputLocation() : config.getWorkingDirectory().toPath().relativize( new File( config.getOutputLocation() ).toPath() ).toString(); - getLogger().info( "Compiling " + + log.info( "Compiling " + ( sourceFiles == null ? "" : ( sourceFiles.length + " source file" + ( sourceFiles.length == 1 ? " " : "s " ) ) ) + "with " + getCompilerId() + " [" + config.describe() + "]" + " to " + to ); diff --git a/plexus-compiler-manager/src/main/java/org/codehaus/plexus/compiler/manager/DefaultCompilerManager.java b/plexus-compiler-manager/src/main/java/org/codehaus/plexus/compiler/manager/DefaultCompilerManager.java index 741111bb..9cf25d56 100644 --- a/plexus-compiler-manager/src/main/java/org/codehaus/plexus/compiler/manager/DefaultCompilerManager.java +++ b/plexus-compiler-manager/src/main/java/org/codehaus/plexus/compiler/manager/DefaultCompilerManager.java @@ -27,7 +27,6 @@ import org.codehaus.plexus.compiler.Compiler; import org.codehaus.plexus.component.annotations.Component; import org.codehaus.plexus.component.annotations.Requirement; -import org.codehaus.plexus.logging.AbstractLogEnabled; import java.util.Map; @@ -36,7 +35,6 @@ */ @Component( role = CompilerManager.class ) public class DefaultCompilerManager - extends AbstractLogEnabled implements CompilerManager { @Requirement diff --git a/plexus-compilers/plexus-compiler-eclipse/src/main/java/org/codehaus/plexus/compiler/eclipse/EclipseJavaCompiler.java b/plexus-compilers/plexus-compiler-eclipse/src/main/java/org/codehaus/plexus/compiler/eclipse/EclipseJavaCompiler.java index 205a2fbb..a94de247 100644 --- a/plexus-compilers/plexus-compiler-eclipse/src/main/java/org/codehaus/plexus/compiler/eclipse/EclipseJavaCompiler.java +++ b/plexus-compilers/plexus-compiler-eclipse/src/main/java/org/codehaus/plexus/compiler/eclipse/EclipseJavaCompiler.java @@ -268,13 +268,13 @@ public CompilerResult performCompile( CompilerConfiguration config ) boolean success = false; if ( compiler != null ) { - getLogger().debug( "Using JSR-199 EclipseCompiler" ); + log.debug( "Using JSR-199 EclipseCompiler" ); // ECJ JSR-199 compiles against the latest Java version it supports if no source // version is given explicitly. BatchCompiler uses 1.3 as default. So check // whether a source version is specified, and if not supply 1.3 explicitly. if ( !haveSourceOrReleaseArgument( args ) ) { - getLogger().debug( "ecj: no source level nor release specified, defaulting to Java 1.3" ); + log.debug( "ecj: no source level nor release specified, defaulting to Java 1.3" ); args.add( "-source" ); args.add( "1.3" ); } @@ -336,7 +336,7 @@ public void report( Diagnostic diagnostic ) } catch ( IllegalCharsetNameException | UnsupportedCharsetException e ) { - getLogger().warn( + log.warn( "ecj: invalid or unsupported character set '" + encoding + "', using default" ); // charset remains null } @@ -345,11 +345,11 @@ public void report( Diagnostic diagnostic ) { charset = Charset.defaultCharset(); } - if ( getLogger().isDebugEnabled() ) + if ( log.isDebugEnabled() ) { - getLogger().debug( "ecj: using character set " + charset.displayName() ); - getLogger().debug( "ecj command line: " + args ); - getLogger().debug( "ecj input source files: " + allSources ); + log.debug( "ecj: using character set " + charset.displayName() ); + log.debug( "ecj command line: " + args ); + log.debug( "ecj input source files: " + allSources ); } try ( StandardJavaFileManager manager = @@ -362,7 +362,7 @@ public void report( Diagnostic diagnostic ) { throw new EcjFailureException( e.getLocalizedMessage() ); } - getLogger().debug( sw.toString() ); + log.debug( sw.toString() ); } else { @@ -371,13 +371,13 @@ public void report( Diagnostic diagnostic ) try { errorF = File.createTempFile( "ecjerr-", ".xml" ); - getLogger().debug( "Using legacy BatchCompiler; error file " + errorF ); + log.debug( "Using legacy BatchCompiler; error file " + errorF ); args.add( "-log" ); args.add( errorF.toString() ); args.addAll( allSources ); - getLogger().debug( "ecj command line: " + args ); + log.debug( "ecj command line: " + args ); success = BatchCompiler.compile( args.toArray( new String[args.size()] ), devNull, devNull, new CompilationProgress() @@ -408,7 +408,7 @@ public void worked( int i, int i1 ) { } } ); - getLogger().debug( sw.toString() ); + log.debug( sw.toString() ); if ( errorF.length() < 80 ) { @@ -635,7 +635,7 @@ private JavaCompiler getEcj() } } } - getLogger().debug( "Cannot find org.eclipse.jdt.internal.compiler.tool.EclipseCompiler" ); + log.debug( "Cannot find org.eclipse.jdt.internal.compiler.tool.EclipseCompiler" ); return null; } @@ -743,7 +743,7 @@ private String decodeVersion( String versionSpec ) if ( versionSpec.equals( "1.9" ) ) { - getLogger().warn( "Version 9 should be specified as 9, not 1.9" ); + log.warn( "Version 9 should be specified as 9, not 1.9" ); return "9"; } return versionSpec; diff --git a/plexus-compilers/plexus-compiler-javac/src/main/java/org/codehaus/plexus/compiler/javac/InProcessCompiler.java b/plexus-compilers/plexus-compiler-javac/src/main/java/org/codehaus/plexus/compiler/javac/InProcessCompiler.java index 65e7f6cc..c4374eee 100644 --- a/plexus-compilers/plexus-compiler-javac/src/main/java/org/codehaus/plexus/compiler/javac/InProcessCompiler.java +++ b/plexus-compilers/plexus-compiler-javac/src/main/java/org/codehaus/plexus/compiler/javac/InProcessCompiler.java @@ -3,9 +3,8 @@ import org.codehaus.plexus.compiler.CompilerConfiguration; import org.codehaus.plexus.compiler.CompilerException; import org.codehaus.plexus.compiler.CompilerResult; -import org.codehaus.plexus.logging.LogEnabled; -public interface InProcessCompiler extends LogEnabled { +public interface InProcessCompiler { CompilerResult compileInProcess(String[] args, final CompilerConfiguration config, String[] sourceFiles) throws CompilerException; diff --git a/plexus-compilers/plexus-compiler-javac/src/main/java/org/codehaus/plexus/compiler/javac/JavacCompiler.java b/plexus-compilers/plexus-compiler-javac/src/main/java/org/codehaus/plexus/compiler/javac/JavacCompiler.java index 8650d3cb..edac5757 100644 --- a/plexus-compilers/plexus-compiler-javac/src/main/java/org/codehaus/plexus/compiler/javac/JavacCompiler.java +++ b/plexus-compilers/plexus-compiler-javac/src/main/java/org/codehaus/plexus/compiler/javac/JavacCompiler.java @@ -165,8 +165,8 @@ public CompilerResult performCompile( CompilerConfiguration config ) } catch ( IOException e ) { - if ( (getLogger() != null ) && getLogger().isWarnEnabled()) { - getLogger().warn( "Unable to autodetect 'javac' path, using 'javac' from the environment." ); + if ( log.isWarnEnabled()) { + log.warn( "Unable to autodetect 'javac' path, using 'javac' from the environment." ); } executable = "javac"; } @@ -607,7 +607,7 @@ protected CompilerResult compileOutOfProcess( CompilerConfiguration config, Stri List messages; - if ( ( getLogger() != null ) && getLogger().isDebugEnabled() ) + if ( log.isDebugEnabled() ) { String debugFileName = StringUtils.isEmpty(config.getDebugFileName()) ? "javac" : config.getDebugFileName(); @@ -624,9 +624,9 @@ protected CompilerResult compileOutOfProcess( CompilerConfiguration config, Stri } catch ( IOException e ) { - if ( ( getLogger() != null ) && getLogger().isWarnEnabled() ) + if ( log.isWarnEnabled() ) { - getLogger().warn( "Unable to write '" + commandLineFile.getName() + "' debug script file", e ); + log.warn( "Unable to write '" + commandLineFile.getName() + "' debug script file", e ); } } } @@ -662,8 +662,8 @@ CompilerResult compileInProcess( String[] args, CompilerConfiguration config ) final Thread thread = Thread.currentThread(); final ClassLoader contextClassLoader = thread.getContextClassLoader(); thread.setContextClassLoader( javacClass.getClassLoader() ); - if ( (getLogger() != null ) && getLogger().isDebugEnabled()) { - getLogger().debug("ttcl changed run compileInProcessWithProperClassloader"); + if ( log.isDebugEnabled()) { + log.debug("ttcl changed run compileInProcessWithProperClassloader"); } try { @@ -1024,7 +1024,7 @@ private File createFileWithArguments( String[] args, String outputDirectory ) try { File tempFile; - if ( ( getLogger() != null ) && getLogger().isDebugEnabled() ) + if ( log.isDebugEnabled() ) { tempFile = File.createTempFile( JavacCompiler.class.getName(), "arguments", new File( outputDirectory ) ); diff --git a/plexus-compilers/plexus-compiler-javac/src/main/java/org/codehaus/plexus/compiler/javac/JavaxToolsCompiler.java b/plexus-compilers/plexus-compiler-javac/src/main/java/org/codehaus/plexus/compiler/javac/JavaxToolsCompiler.java index e4d62a08..68cd0563 100644 --- a/plexus-compilers/plexus-compiler-javac/src/main/java/org/codehaus/plexus/compiler/javac/JavaxToolsCompiler.java +++ b/plexus-compilers/plexus-compiler-javac/src/main/java/org/codehaus/plexus/compiler/javac/JavaxToolsCompiler.java @@ -23,7 +23,8 @@ import org.codehaus.plexus.compiler.CompilerException; import org.codehaus.plexus.compiler.CompilerResult; import org.codehaus.plexus.component.annotations.Component; -import org.codehaus.plexus.logging.AbstractLogEnabled; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import javax.tools.Diagnostic; import javax.tools.DiagnosticCollector; @@ -45,8 +46,9 @@ * @since 2.0 */ @Component( role = InProcessCompiler.class ) -public class JavaxToolsCompiler extends AbstractLogEnabled implements InProcessCompiler +public class JavaxToolsCompiler implements InProcessCompiler { + private final Logger log = LoggerFactory.getLogger( getClass() ); /** * is that thread safe ??? */ @@ -149,7 +151,7 @@ public CompilerResult compileInProcess( String[] args, final CompilerConfigurati { // workaround for https://bugs.openjdk.java.net/browse/JDK-8210649 // workaround for https://bugs.openjdk.java.net/browse/JDK-8216202 - getLogger().debug( "Ignore Issue get JavaCompiler Diagnostic message (see https://bugs.openjdk.java.net/browse/JDK-8210649):" + e.getMessage(), e ); + log.debug( "Ignore Issue get JavaCompiler Diagnostic message (see https://bugs.openjdk.java.net/browse/JDK-8210649):" + e.getMessage(), e ); // in this case we try to replace the baseMessage with toString (hoping this does not throw a new exception.. baseMessage = diagnostic.toString(); } diff --git a/pom.xml b/pom.xml index 5f794d82..669c29bc 100644 --- a/pom.xml +++ b/pom.xml @@ -107,13 +107,6 @@ - - - org.codehaus.plexus - plexus-container-default - provided - -