Most JMH source files (e.g. see [1]) have the same license as java.lang.String. Do you exclude files that use `java.lang.String` from the release? I doubt so. The same goes for the benchmarks.
>Or, we can exclude the benchmark code from the release like [4] but >still hold it in the VCS. There's no point in excluding benchmarks from the release. There might be value in publishing the benchmark jars along with the release However, it is illegal to use jmh files (or any other files) that are licensed under "GPL without classpath exception". In other words: if the file has classpath exception, you can use it (e.g. depend on it, extend class, implement interface), if the classpath exception is not there you can't. [1]: https://issues.apache.org/jira/browse/LEGAL-399?focusedCommentId=16577099&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16577099 Vladimir