Skip to content

IllegalArgumentException when running ParseTestCaseToLlmContext on Apache Struts repository #2

@ThomasKain

Description

@ThomasKain

The following exception is thrown when running this tool on the Apache Struts repository (https://github.com/apache/struts):

$ java -jar Javalang-analyzing-cli-1.1.2-all.jar ParseTestCaseToLlmContext --project struts
Analyzer CLI starting...
Task: ParseTestCaseToLlmContext
Project Directory: E:\repodigger\repos\apache-projects\struts
Language: java
Threads: Default (CPU Cores)
Output Format: json
Output Directory: E:\repodigger\repos\apache-projects\struts\AAA
Registered AnalyzerTask: ParseTestCaseToLlmContext
Executing task via TaskManager: ParseTestCaseToLlmContext
Executing task: ParseTestCaseToLlmContext
Executing task: ParseTestCaseToLlmContext
Using output directory: struts\AAA
Found 19 test source directories:
  - struts\apps\rest-showcase\src\test\java
  - struts\apps\showcase\src\test\java
  - struts\core\src\test\java
  - struts\plugins\async\src\test\java
  - struts\plugins\bean-validation\src\test\java
  - struts\plugins\cdi\src\test\java
  - struts\plugins\convention\src\test\java
  - struts\plugins\jasperreports\src\test\java
  - struts\plugins\jasperreports7\src\test\java
  - struts\plugins\javatemplates\src\test\java
  - struts\plugins\jfreechart\src\test\java
  - struts\plugins\json\src\test\java
  - struts\plugins\junit\src\test\java
  - struts\plugins\rest\src\test\java
  - struts\plugins\spring\src\test\java
  - struts\plugins\testng\src\test\java
  - struts\plugins\tiles\src\test\java
  - struts\plugins\velocity\src\test\java
  - struts\plugins\xslt\src\test\java
Processing file: struts\apps\rest-showcase\src\test\java\it\org\apache\struts2\rest\example\GetOrdersTest.java
DEBUG: BuildToolDetectorFactory.detect() called for project: struts
DEBUG: Trying detector: MavenDetector
DEBUG: Using detector: MavenDetector for project: struts
DEBUG: Using local Maven repository: C:\Users\Thomas Kain\.m2\repository
DEBUG: Found 3 <dependency> tags in pom.xml
DEBUG: Resolved version property 'maven-surefire-plugin.version' to '3.5.2' for org.apache.maven.surefire:surefire-junit47
DEBUG: Processing dependency: groupId=org.apache.maven.surefire, artifactId=surefire-junit47, version=3.5.2, scope=default (compile)
DEBUG: Attempting to locate JAR: C:\Users\Thomas Kain\.m2\repository\org\apache\maven\surefire\surefire-junit47\3.5.2\surefire-junit47-3.5.2.jar
DEBUG: Added to classpath: C:\Users\Thomas Kain\.m2\repository\org\apache\maven\surefire\surefire-junit47\3.5.2\surefire-junit47-3.5.2.jar
DEBUG: Processing dependency: groupId=org.apache.maven.doxia, artifactId=doxia-core, version=2.0.0, scope=default (compile)
DEBUG: Attempting to locate JAR: C:\Users\Thomas Kain\.m2\repository\org\apache\maven\doxia\doxia-core\2.0.0\doxia-core-2.0.0.jar
DEBUG: Added to classpath: C:\Users\Thomas Kain\.m2\repository\org\apache\maven\doxia\doxia-core\2.0.0\doxia-core-2.0.0.jar
DEBUG: Processing dependency: groupId=org.apache.maven.doxia, artifactId=doxia-module-markdown, version=2.0.0, scope=default (compile)
DEBUG: Attempting to locate JAR: C:\Users\Thomas Kain\.m2\repository\org\apache\maven\doxia\doxia-module-markdown\2.0.0\doxia-module-markdown-2.0.0.jar
DEBUG: Added to classpath: C:\Users\Thomas Kain\.m2\repository\org\apache\maven\doxia\doxia-module-markdown\2.0.0\doxia-module-markdown-2.0.0.jar
DEBUG: Adding common test dependencies with default versions...
DEBUG: Checking for common test dependency: C:\Users\Thomas Kain\.m2\repository\org\junit\jupiter\junit-jupiter-api\5.11.4\junit-jupiter-api-5.11.4.jar
DEBUG: Common test dependency NOT FOUND: C:\Users\Thomas Kain\.m2\repository\org\junit\jupiter\junit-jupiter-api\5.11.4\junit-jupiter-api-5.11.4.jar
DEBUG: Checking for common test dependency: C:\Users\Thomas Kain\.m2\repository\org\junit\jupiter\junit-jupiter-engine\5.11.4\junit-jupiter-engine-5.11.4.jar    
DEBUG: Common test dependency NOT FOUND: C:\Users\Thomas Kain\.m2\repository\org\junit\jupiter\junit-jupiter-engine\5.11.4\junit-jupiter-engine-5.11.4.jar       
DEBUG: Checking for common test dependency: C:\Users\Thomas Kain\.m2\repository\org\junit\jupiter\junit-jupiter-params\5.11.4\junit-jupiter-params-5.11.4.jar    
DEBUG: Common test dependency NOT FOUND: C:\Users\Thomas Kain\.m2\repository\org\junit\jupiter\junit-jupiter-params\5.11.4\junit-jupiter-params-5.11.4.jar       
DEBUG: Checking for common test dependency: C:\Users\Thomas Kain\.m2\repository\org\mockito\mockito-core\5.15.2\mockito-core-5.15.2.jar
DEBUG: Added common test dependency to classpath: C:\Users\Thomas Kain\.m2\repository\org\mockito\mockito-core\5.15.2\mockito-core-5.15.2.jar
DEBUG: Checking for common test dependency: C:\Users\Thomas Kain\.m2\repository\org\hamcrest\hamcrest\3.0\hamcrest-3.0.jar
DEBUG: Common test dependency NOT FOUND: C:\Users\Thomas Kain\.m2\repository\org\hamcrest\hamcrest\3.0\hamcrest-3.0.jar
DEBUG: Checking for common test dependency: C:\Users\Thomas Kain\.m2\repository\org\assertj\assertj-core\3.26.3\assertj-core-3.26.3.jar
DEBUG: Common test dependency NOT FOUND: C:\Users\Thomas Kain\.m2\repository\org\assertj\assertj-core\3.26.3\assertj-core-3.26.3.jar
Error executing task ParseTestCaseToLlmContext: null
java.lang.IllegalArgumentException
        at org.eclipse.jdt.core.dom.ASTParser.setEnvironment(ASTParser.java:342)
        at edu.stevens.swe.research.java.parser.core.core.ASTProcessor.createParser(ASTProcessor.java:58)
        at edu.stevens.swe.research.java.parser.core.ResearchParser.getParser(ResearchParser.java:41)
        at edu.stevens.swe.research.java.cli.analyzer.core.AstParserUtil.parse(AstParserUtil.java:43)
        at edu.stevens.swe.research.java.cli.analyzer.tasks.ParseTestCaseToLlmContextTask.execute(ParseTestCaseToLlmContextTask.java:84)
        at edu.stevens.swe.research.java.cli.analyzer.TaskManager.executeTask(TaskManager.java:109)
        at edu.stevens.swe.research.java.cli.Main.call(Main.java:96)
        at edu.stevens.swe.research.java.cli.Main.call(Main.java:18)
        at picocli.CommandLine.executeUserObject(CommandLine.java:2041)
        at picocli.CommandLine.access$1500(CommandLine.java:148)
        at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2461)
        at picocli.CommandLine$RunLast.handle(CommandLine.java:2453)
        at picocli.CommandLine$RunLast.handle(CommandLine.java:2415)
        at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2273)
        at picocli.CommandLine$RunLast.execute(CommandLine.java:2417)
        at picocli.CommandLine.execute(CommandLine.java:2170)
        at edu.stevens.swe.research.java.cli.Main.main(Main.java:120)
JSON output (manual basic) written. Consider using a library for robust JSON.
{
  "project": "struts",
  "task": "ParseTestCaseToLlmContext",
  "cases": [
  ]
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions