Created by: sebastien-rosset
- Upgrade version of maven-surefire-plugin
- In case of UT failure, output logs of petstore service to help troubleshoot issue.
- Java unit tests are modified to use the local instantiation of the petstore.
Currently, the default "okhttp-gson" library uses maven-surefire-plugin version 2.12, which is fairly old (January 2012). With maven-surefire-plugin version 2.12, the following error occurs when executing "mvn package" on the generated Java code:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12:test
(default-test) on project intersight-openapi-java-client:
Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.12:test failed:
Task java.util.concurrent.FutureTask@f29353f[Not completed, task = org.apache.maven.plugin.surefire.booterclient.ForkStarter$1@889a8a8] rejected
from java.util.concurrent.ThreadPoolExecutor@36f7d7b[Running, pool size = 1,
active threads = 0, queued tasks = 500, completed tasks = 0] -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12:test
(default-test) on project intersight-openapi-java-client: Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.12:test failed:
Task java.util.concurrent.FutureTask@f29353f[Not completed, task = org.apache.maven.plugin.surefire.booterclient.ForkStarter$1@889a8a8]
rejected from java.util.concurrent.ThreadPoolExecutor@36f7d7b[Running, pool size = 1,
active threads = 0, queued tasks = 500, completed tasks = 0]
This issue occurs with relatively big OAS documents.
Changing the pom.xml to use version 3.0.0-M4 fixes the problem.
For reference, here is the bug fix in the surefire plugin: https://git-wip-us.apache.org/repos/asf?p=maven-surefire.git;a=commit;h=b7adb745df68730e43a6e3e4711f18619513bfb0
PR checklist
-
Read the contribution guidelines. -
If contributing template-only or documentation-only changes which will change sample output, build the project before. -
Run the shell script(s) under ./bin/
(or Windows batch scripts under.\bin\windows
) to update Petstore samples related to your fix. This is important, as CI jobs will verify all generator outputs of your HEAD commit, and these must match the expectations made by your contribution. You only need to run./bin/{LANG}-petstore.sh
,./bin/openapi3/{LANG}-petstore.sh
if updating the code or mustache templates for a language ({LANG}
) (e.g. php, ruby, python, etc). -
File the PR against the correct branch: master
,4.3.x
,5.0.x
. Default:master
. -
Copy the technical committee to review the pull request if your PR is targeting a particular programming language.