diff --git a/jadx-cli/src/main/java/jadx/cli/JadxCLI.java b/jadx-cli/src/main/java/jadx/cli/JadxCLI.java index f9ddd2561..1aed0f167 100644 --- a/jadx-cli/src/main/java/jadx/cli/JadxCLI.java +++ b/jadx-cli/src/main/java/jadx/cli/JadxCLI.java @@ -18,7 +18,7 @@ public class JadxCLI { processAndSave(jadxArgs); } } catch (Throwable e) { - LOG.error("jadx error: " + e.getMessage(), e); + LOG.error("jadx error: {}", e.getMessage(), e); System.exit(1); } } @@ -56,7 +56,7 @@ public class JadxCLI { } else { outDirName = name + "-jadx-out"; } - LOG.info("output directory: " + outDirName); + LOG.info("output directory: {}", outDirName); outputDir = new File(outDirName); jadxArgs.setOutputDir(outputDir); } diff --git a/jadx-core/src/main/java/jadx/api/JavaPackage.java b/jadx-core/src/main/java/jadx/api/JavaPackage.java index 8c9420cad..9af545729 100644 --- a/jadx-core/src/main/java/jadx/api/JavaPackage.java +++ b/jadx-core/src/main/java/jadx/api/JavaPackage.java @@ -2,6 +2,8 @@ package jadx.api; import java.util.List; +import org.jetbrains.annotations.NotNull; + public final class JavaPackage implements JavaNode, Comparable { private final String name; private final List classes; @@ -32,7 +34,7 @@ public final class JavaPackage implements JavaNode, Comparable { } @Override - public int compareTo(JavaPackage o) { + public int compareTo(@NotNull JavaPackage o) { return name.compareTo(o.name); } diff --git a/jadx-core/src/main/java/jadx/api/ResourcesLoader.java b/jadx-core/src/main/java/jadx/api/ResourcesLoader.java index 2e46c699f..9257f1419 100644 --- a/jadx-core/src/main/java/jadx/api/ResourcesLoader.java +++ b/jadx-core/src/main/java/jadx/api/ResourcesLoader.java @@ -42,7 +42,7 @@ public final class ResourcesLoader { return list; } - public static interface ResourceDecoder { + public interface ResourceDecoder { Object decode(long size, InputStream is) throws IOException; } @@ -72,7 +72,7 @@ public final class ResourcesLoader { inputStream.close(); } } catch (Exception e) { - LOG.debug("Error close zip file: " + zipRef, e); + LOG.debug("Error close zip file: {}", zipRef, e); } } } @@ -130,7 +130,7 @@ public final class ResourcesLoader { try { zip.close(); } catch (Exception e) { - LOG.error("Zip file close error: " + file.getAbsolutePath(), e); + LOG.error("Zip file close error: {}", file.getAbsolutePath(), e); } } } diff --git a/jadx-core/src/main/java/jadx/core/codegen/MethodGen.java b/jadx-core/src/main/java/jadx/core/codegen/MethodGen.java index caca7aa28..b6d9c65b8 100644 --- a/jadx-core/src/main/java/jadx/core/codegen/MethodGen.java +++ b/jadx-core/src/main/java/jadx/core/codegen/MethodGen.java @@ -153,12 +153,8 @@ public class MethodGen { if (mth.contains(AType.JADX_ERROR) || mth.contains(AFlag.INCONSISTENT_CODE) || mth.getRegion() == null) { - code.startLine("throw new UnsupportedOperationException(\"Method not decompiled: ") - .add(mth.toString()) - .add("\");"); - - if (mth.contains(AType.JADX_ERROR)) { - JadxErrorAttr err = mth.get(AType.JADX_ERROR); + JadxErrorAttr err = mth.get(AType.JADX_ERROR); + if (err != null) { code.startLine("/* JADX: method processing error */"); Throwable cause = err.getCause(); if (cause != null) { @@ -171,6 +167,10 @@ public class MethodGen { code.startLine("/*"); addFallbackMethodCode(code); code.startLine("*/"); + + code.startLine("throw new UnsupportedOperationException(\"Method not decompiled: ") + .add(mth.toString()) + .add("\");"); } else { RegionGen regionGen = new RegionGen(this); regionGen.makeRegion(code, mth.getRegion()); diff --git a/jadx-core/src/main/java/jadx/core/codegen/RegionGen.java b/jadx-core/src/main/java/jadx/core/codegen/RegionGen.java index b2cf85fec..5bfedec2c 100644 --- a/jadx-core/src/main/java/jadx/core/codegen/RegionGen.java +++ b/jadx-core/src/main/java/jadx/core/codegen/RegionGen.java @@ -257,7 +257,7 @@ public class RegionGen extends InsnGen { } else if (k instanceof Integer) { code.add(TypeGen.literalToString((Integer) k, arg.getType())); } else { - throw new JadxRuntimeException("Unexpected key in switch: " + (k != null ? k.getClass() : k)); + throw new JadxRuntimeException("Unexpected key in switch: " + (k != null ? k.getClass() : null)); } code.add(':'); } diff --git a/jadx-core/src/main/java/jadx/core/codegen/TypeGen.java b/jadx-core/src/main/java/jadx/core/codegen/TypeGen.java index 9a8e48fa2..c54ca0205 100644 --- a/jadx-core/src/main/java/jadx/core/codegen/TypeGen.java +++ b/jadx-core/src/main/java/jadx/core/codegen/TypeGen.java @@ -63,7 +63,7 @@ public class TypeGen { case OBJECT: case ARRAY: if (lit != 0) { - LOG.warn("Wrong object literal: " + lit + " for type: " + type); + LOG.warn("Wrong object literal: {} for type: {}", lit, type); return Long.toString(lit); } return "null"; diff --git a/jadx-core/src/main/java/jadx/core/dex/visitors/regions/CheckRegions.java b/jadx-core/src/main/java/jadx/core/dex/visitors/regions/CheckRegions.java index 8a5e95c3b..416b12f4c 100644 --- a/jadx-core/src/main/java/jadx/core/dex/visitors/regions/CheckRegions.java +++ b/jadx-core/src/main/java/jadx/core/dex/visitors/regions/CheckRegions.java @@ -94,17 +94,17 @@ public class CheckRegions extends AbstractVisitor { } private void printRegion(MethodNode mth) { - LOG.debug("|" + mth.toString()); + LOG.debug("|{}", mth.toString()); printRegion(mth, mth.getRegion(), "| "); } private void printRegion(MethodNode mth, IRegion region, String indent) { - LOG.debug(indent + region); + LOG.debug("{}{}", indent, region); for (IContainer container : region.getSubBlocks()) { if (container instanceof IRegion) { printRegion(mth, (IRegion) container, indent + " "); } else { - LOG.debug(indent + " " + container); + LOG.debug("{} {}", indent, container); } } } diff --git a/jadx-core/src/main/java/jadx/core/utils/ErrorsCounter.java b/jadx-core/src/main/java/jadx/core/utils/ErrorsCounter.java index e9657453f..62f31cccb 100644 --- a/jadx-core/src/main/java/jadx/core/utils/ErrorsCounter.java +++ b/jadx-core/src/main/java/jadx/core/utils/ErrorsCounter.java @@ -40,7 +40,7 @@ public class ErrorsCounter { if (e.getClass() == JadxOverflowException.class) { // don't print full stack trace e = new JadxOverflowException(e.getMessage()); - LOG.error(msg + ", message: " + e.getMessage()); + LOG.error("{}, message: {}", msg, e.getMessage()); } else { LOG.error(msg, e); } diff --git a/jadx-core/src/main/java/jadx/core/xmlgen/ResTableParser.java b/jadx-core/src/main/java/jadx/core/xmlgen/ResTableParser.java index 6eabde16d..e47d29ef5 100644 --- a/jadx-core/src/main/java/jadx/core/xmlgen/ResTableParser.java +++ b/jadx-core/src/main/java/jadx/core/xmlgen/ResTableParser.java @@ -273,7 +273,7 @@ public class ResTableParser extends CommonBinaryParser { if ((b1 & 0x80) == 0) { str = new String(new char[]{(char) b1, (char) b2}); } else { - LOG.warn("TODO: parse locale: 0x" + Integer.toHexString(b1) + Integer.toHexString(b1)); + LOG.warn("TODO: parse locale: 0x{}{}", Integer.toHexString(b1), Integer.toHexString(b2)); } } return str; diff --git a/jadx-core/src/main/java/jadx/core/xmlgen/entry/ValuesParser.java b/jadx-core/src/main/java/jadx/core/xmlgen/entry/ValuesParser.java index 7e6de0196..da3f7260c 100644 --- a/jadx-core/src/main/java/jadx/core/xmlgen/entry/ValuesParser.java +++ b/jadx-core/src/main/java/jadx/core/xmlgen/entry/ValuesParser.java @@ -92,7 +92,7 @@ public class ValuesParser extends ParserConstants { return decodeComplex(data, true); default: - LOG.warn("Unknown data type: 0x" + Integer.toHexString(dataType) + " " + data); + LOG.warn("Unknown data type: 0x{} {}", Integer.toHexString(dataType), data); return " ?0x" + Integer.toHexString(dataType) + " " + data; } } diff --git a/jadx-core/src/test/java/jadx/tests/integration/variables/TestVariablesDefinitions.java b/jadx-core/src/test/java/jadx/tests/integration/variables/TestVariablesDefinitions.java index 32e57a497..1dbb24706 100644 --- a/jadx-core/src/test/java/jadx/tests/integration/variables/TestVariablesDefinitions.java +++ b/jadx-core/src/test/java/jadx/tests/integration/variables/TestVariablesDefinitions.java @@ -29,7 +29,7 @@ public class TestVariablesDefinitions extends IntegrationTest { DepthTraversal.visit(pass, cls); } } catch (Exception e) { - LOG.error("Decode exception: " + cls, e); + LOG.error("Decode exception: {}", cls, e); } } } diff --git a/jadx-gui/src/main/java/jadx/gui/JadxGUI.java b/jadx-gui/src/main/java/jadx/gui/JadxGUI.java index 4e8119b99..a624e8471 100644 --- a/jadx-gui/src/main/java/jadx/gui/JadxGUI.java +++ b/jadx-gui/src/main/java/jadx/gui/JadxGUI.java @@ -38,7 +38,7 @@ public class JadxGUI { } }); } catch (Throwable e) { - LOG.error("Error: " + e.getMessage()); + LOG.error("Error: {}", e.getMessage()); System.exit(1); } } diff --git a/jadx-gui/src/main/java/jadx/gui/JadxWrapper.java b/jadx-gui/src/main/java/jadx/gui/JadxWrapper.java index e0a1dc9ff..fe217117b 100644 --- a/jadx-gui/src/main/java/jadx/gui/JadxWrapper.java +++ b/jadx-gui/src/main/java/jadx/gui/JadxWrapper.java @@ -31,9 +31,9 @@ public class JadxWrapper { try { this.decompiler.loadFile(file); } catch (DecodeException e) { - LOG.error("Error decode file: " + file, e); + LOG.error("Error decode file: {}", file, e); } catch (JadxException e) { - LOG.error("Error open file: " + file, e); + LOG.error("Error open file: {}", file, e); } } diff --git a/jadx-gui/src/main/java/jadx/gui/ui/ContentArea.java b/jadx-gui/src/main/java/jadx/gui/ui/ContentArea.java index f32c7d1ad..6152f70c5 100644 --- a/jadx-gui/src/main/java/jadx/gui/ui/ContentArea.java +++ b/jadx-gui/src/main/java/jadx/gui/ui/ContentArea.java @@ -150,7 +150,7 @@ class ContentArea extends RSyntaxTextArea { try { setCaretPosition(getLineStartOffset(line)); } catch (BadLocationException e) { - LOG.debug("Can't scroll to " + line, e); + LOG.debug("Can't scroll to {}", line, e); } } diff --git a/jadx-gui/src/main/java/jadx/gui/ui/SearchBar.java b/jadx-gui/src/main/java/jadx/gui/ui/SearchBar.java index 9fe4112b9..227bed7c0 100644 --- a/jadx-gui/src/main/java/jadx/gui/ui/SearchBar.java +++ b/jadx-gui/src/main/java/jadx/gui/ui/SearchBar.java @@ -26,7 +26,7 @@ import org.slf4j.LoggerFactory; class SearchBar extends JToolBar { private static final long serialVersionUID = 1836871286618633003L; - private static final Logger LOG = LoggerFactory.getLogger(SearchDialog.class); + private static final Logger LOG = LoggerFactory.getLogger(SearchBar.class); private static final Color COLOR_BG_ERROR = new Color(0xFFDFDE); private static final Color COLOR_BG_WARN = new Color(0xFFFDD9); diff --git a/jadx-gui/src/main/java/jadx/gui/utils/Link.java b/jadx-gui/src/main/java/jadx/gui/utils/Link.java index 6b1544590..f650c7c0a 100644 --- a/jadx-gui/src/main/java/jadx/gui/utils/Link.java +++ b/jadx-gui/src/main/java/jadx/gui/utils/Link.java @@ -20,7 +20,7 @@ import static java.awt.Desktop.Action; public class Link extends JLabel implements MouseListener { private static final long serialVersionUID = 3655322136444908178L; - private static final Logger LOG = LoggerFactory.getLogger(JLabel.class); + private static final Logger LOG = LoggerFactory.getLogger(Link.class); private String url;