generated from cloudwego/.github
-
Notifications
You must be signed in to change notification settings - Fork 39
Open
Description
Describe the bug
The java parser generates different outputs for the same input.
To Reproduce
- clone main branch and build abcoder
- run abcoder on testdata/java/4_full_maven_repo twice
- compare the generated uniasts (using the smart diff script)
Expected behavior
For the same repo, abcoder should generate two identical uniASTs.
Screenshots
[~/Programs/test/arti/java/abcoder] [main =] [05:43:56 PM] zhenyang
$ git status
On branch main
Your branch is up to date with 'origin/main'.
nothing to commit, working tree clean
[~/Programs/test/arti/java/abcoder] [main =] [05:43:57 PM] zhenyang
$ go build
[~/Programs/test/arti/java/abcoder] [main =] [05:44:02 PM] zhenyang
$ ./abcoder parse java testdata/java/4_full_maven_repo -o java_1.json
2025/09/26 17:44:13 Using JDTLS_ROOT_PATH from environment: /home/zhenyang/O/data/Programs/bytedance/LanguageServers
[ERROR]17:44:13 client.go:264: LSP server stderr: OpenJDK 64-Bit Server VM warning: Options -Xverify:none and -noverify were deprecated in JDK 13 and will likely be removed in a future release.
[ERROR]17:44:14 client.go:264: LSP server stderr: Sep 26, 2025 5:44:14 PM org.apache.aries.spifly.BaseActivator log
[ERROR]17:44:14 client.go:264: LSP server stderr: INFO: Registered provider ch.qos.logback.classic.servlet.LogbackServletContainerInitializer of service jakarta.servlet.ServletContainerInitializer in bundle ch.qos.logback.classic
[ERROR]17:44:14 client.go:264: LSP server stderr: Sep 26, 2025 5:44:14 PM org.apache.aries.spifly.BaseActivator log
[ERROR]17:44:14 client.go:264: LSP server stderr: INFO: Registered provider ch.qos.logback.classic.spi.LogbackServiceProvider of service org.slf4j.spi.SLF4JServiceProvider in bundle ch.qos.logback.classic
[~/Programs/test/arti/java/abcoder] [main =] [05:44:47 PM] zhenyang
$ ./abcoder parse java testdata/java/4_full_maven_repo -o java_2.json >/dev/null 2>&1
[~/Programs/test/arti/java/abcoder] [main =] [05:45:06 PM] zhenyang
$ ./script/diffjson.py java_1.json java_2.json 2>&1 | head
Differences found between 'java_1.json' and 'java_2.json':
Value Changed at: root['Modules']['com.example.test:core-module:1.0.0-SNAPSHOT']['Packages']['com.example.core.repository']['Types']['InMemoryUserRepository']['Methods']['findAll()']['Name']
- old: 'findAll()'
+ new: 'InMemoryUserRepository.findAll()'
--------------------
Value Changed at: root['Modules']['com.example.test:core-module:1.0.0-SNAPSHOT']['Packages']['com.example.core.repository']['Types']['InMemoryUserRepository']['Methods']['save(User)']['Name']
- old: 'InMemoryUserRepository.save(User)'
+ new: 'save(User)'
--------------------Version:
main branch
Environment:
The output of go env.
Additional context
Add any other context about the problem here.
Metadata
Metadata
Assignees
Labels
No labels