Skip to content

Commit 84253a4

Browse files
authored
Handled the logger generated class in D2D #1994 (#1996)
Signed-off-by: Chin Yeung Li <tli@nexb.com>
1 parent 06bc5d5 commit 84253a4

2 files changed

Lines changed: 11 additions & 1 deletion

File tree

scanpipe/pipes/jvm.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,11 @@ def get_normalized_path(cls, path, extension):
136136
)
137137
path = Path(path.strip("/"))
138138
class_name = path.name
139-
if "$" in class_name: # inner class
139+
# Handled generated logger class
140+
# https://github.com/aboutcode-org/scancode.io/issues/1994
141+
if class_name.endswith("_$logger.class"):
142+
class_name, _, _ = class_name.partition("_$logger.class")
143+
elif "$" in class_name: # inner class
140144
class_name, _, _ = class_name.partition("$")
141145
else:
142146
class_name, _, _ = class_name.partition(".") # plain .class

scanpipe/tests/pipes/test_jvm.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,12 @@ def test_scanpipe_pipes_jvm_get_normalized_java_path_with_inner_class(self):
9494
)
9595
self.assertEqual("foo/org/common/Bar.java", njp)
9696

97+
def test_scanpipe_pipes_jvm_get_normalized_java_path_with_logging_annotation(self):
98+
njp = jvm.JavaLanguage.get_normalized_path(
99+
"foo/org/common/Bar_$logger.class", ".java"
100+
)
101+
self.assertEqual("foo/org/common/Bar.java", njp)
102+
97103
def test_scanpipe_pipes_jvm_get_fully_qualified_java_path(self):
98104
fqjp = jvm.get_fully_qualified_path("org.common", "Bar.java")
99105
self.assertEqual("org/common/Bar.java", fqjp)

0 commit comments

Comments
 (0)