From 9260fa506864f682ffbdd73c4e9f2ff62d3014e3 Mon Sep 17 00:00:00 2001 From: "Erik C. Thauvin" Date: Mon, 30 Oct 2023 15:05:22 -0700 Subject: [PATCH] Added more logging --- .../bld/extension/AbstractBootOperation.java | 36 ++++++++++++------- .../rife/bld/extension/BootJarOperation.java | 2 +- .../rife/bld/extension/BootWarOperation.java | 5 +++ 3 files changed, 29 insertions(+), 14 deletions(-) diff --git a/src/main/java/rife/bld/extension/AbstractBootOperation.java b/src/main/java/rife/bld/extension/AbstractBootOperation.java index 1bb225d..6fb1367 100644 --- a/src/main/java/rife/bld/extension/AbstractBootOperation.java +++ b/src/main/java/rife/bld/extension/AbstractBootOperation.java @@ -42,6 +42,7 @@ import java.util.spi.ToolProvider; */ public abstract class AbstractBootOperation> extends AbstractOperation> { + private static final Logger LOGGER = Logger.getLogger(AbstractBootOperation.class.getName()); private final List infLibs_ = new ArrayList<>(); private final List launcherLibs_ = new ArrayList<>(); private final List manifestAttributes_ = new ArrayList<>(); @@ -119,9 +120,13 @@ public abstract class AbstractBootOperation> } else { var meta_inf_dir = new File(stagingDirectory, "META-INF"); for (var jar : launcherLibs()) { - FileUtils.unzipFile(jar, stagingDirectory); - if (meta_inf_dir.exists()) { - FileUtils.deleteDirectory(meta_inf_dir); + if (jar.exists()) { + FileUtils.unzipFile(jar, stagingDirectory); + if (meta_inf_dir.exists()) { + FileUtils.deleteDirectory(meta_inf_dir); + } + } else if (LOGGER.isLoggable(Level.WARNING)) { + LOGGER.warning("ERROR: file not found: " + jar.getAbsolutePath()); } } } @@ -139,6 +144,8 @@ public abstract class AbstractBootOperation> for (var dir : sourceDirectories()) { if (dir.exists()) { FileUtils.copyDirectory(dir, inf_classes_dir); + } else if (LOGGER.isLoggable(Level.WARNING)) { + LOGGER.warning("ERROR: directory not found: " + dir.getAbsolutePath()); } } @@ -155,7 +162,11 @@ public abstract class AbstractBootOperation> mkDirs(inf_lib_dir); for (var jar : infLibs_) { - Files.copy(jar.toPath(), inf_lib_dir.toPath().resolve(jar.getName())); + if (jar.exists()) { + Files.copy(jar.toPath(), inf_lib_dir.toPath().resolve(jar.getName())); + } else if (LOGGER.isLoggable(Level.WARNING)) { + LOGGER.warning("ERROR: file not found: " + jar.getAbsolutePath()); + } } } @@ -163,17 +174,16 @@ public abstract class AbstractBootOperation> * Part of the {@link #execute} operation, create the archive from the staging directory. * * @param stagingDirectory the staging directory - * @param logger the logger instance */ - protected void executeCreateArchive(File stagingDirectory, Logger logger) + protected void executeCreateArchive(File stagingDirectory) throws IOException { executeCreateManifest(stagingDirectory); - if (logger.isLoggable(Level.FINE) && (!silent())) { - logger.fine(MessageFormat.format("Staging Directory: {0} (exists:{1})", stagingDirectory, + if (LOGGER.isLoggable(Level.FINE) && (!silent())) { + LOGGER.fine(MessageFormat.format("Staging Directory: {0} (exists:{1})", stagingDirectory, stagingDirectory.exists())); - logger.fine(MessageFormat.format("Destination Directory: {0} (exists:{1})", destinationDirectory(), + LOGGER.fine(MessageFormat.format("Destination Directory: {0} (exists:{1})", destinationDirectory(), destinationDirectory().exists())); - logger.fine(MessageFormat.format("Destination Archive: {0}", destinationFileName())); + LOGGER.fine(MessageFormat.format("Destination Archive: {0}", destinationFileName())); } var out = new StringWriter(); @@ -183,7 +193,7 @@ public abstract class AbstractBootOperation> var jarTool = ToolProvider.findFirst("jar").orElseThrow(); String args; - if (logger.isLoggable(Level.FINER)) { + if (LOGGER.isLoggable(Level.FINER)) { args = "-0cMvf"; } else { args = "-0cMf"; @@ -198,8 +208,8 @@ public abstract class AbstractBootOperation> throw new IOException(errBuff.toString()); } else { var outBuff = out.getBuffer(); - if (!outBuff.isEmpty() && logger.isLoggable(Level.INFO) && !silent()) { - logger.info(outBuff.toString()); + if (!outBuff.isEmpty() && LOGGER.isLoggable(Level.INFO) && !silent()) { + LOGGER.info(outBuff.toString()); } } } diff --git a/src/main/java/rife/bld/extension/BootJarOperation.java b/src/main/java/rife/bld/extension/BootJarOperation.java index 9b807e8..6e2f187 100644 --- a/src/main/java/rife/bld/extension/BootJarOperation.java +++ b/src/main/java/rife/bld/extension/BootJarOperation.java @@ -50,7 +50,7 @@ public class BootJarOperation extends AbstractBootOperation { executeCopyInfLibs(boot_inf_dir); executeCopyBootLoader(staging_dir); - executeCreateArchive(staging_dir, LOGGER); + executeCreateArchive(staging_dir); if (!silent() && LOGGER.isLoggable(Level.INFO)) { LOGGER.info(String.format("The executable JAR (%s) was created in: %s%n", destinationFileName(), diff --git a/src/main/java/rife/bld/extension/BootWarOperation.java b/src/main/java/rife/bld/extension/BootWarOperation.java index 26349a7..9149497 100644 --- a/src/main/java/rife/bld/extension/BootWarOperation.java +++ b/src/main/java/rife/bld/extension/BootWarOperation.java @@ -76,6 +76,11 @@ public class BootWarOperation extends AbstractBootOperation { for (var jar : providedLibs_) { Files.copy(jar.toPath(), boot_inf_lib_dir.toPath().resolve(jar.getName())); + if (jar.exists()) { + Files.copy(jar.toPath(), lib_provided_dir.toPath().resolve(jar.getName())); + } else if (LOGGER.isLoggable(Level.WARNING)) { + LOGGER.warning("ERROR: file not found: " + jar); + } } }