Andy Tolbert created CASSANDRA-20497: ----------------------------------------
Summary: Fix eclipse project generation on trunk by updating to work with Java 11+ Key: CASSANDRA-20497 URL: https://issues.apache.org/jira/browse/CASSANDRA-20497 Project: Apache Cassandra Issue Type: Improvement Components: Build Reporter: Andy Tolbert Assignee: Andy Tolbert While working on CASSANDRA-20328 I had to make a small tweak to allow sstableloader to work in eclipse with its source moved to a new tools-specific directory. While doing this I noticed that eclipse project generation was not functional for the following reasons: # A classpath entry is added for {{${java.home}/../lib/tools.jar}}, which no longer exists after JDK 9 ([JEP-220|https://openjdk.org/jeps/220]) # The generated .classpath file appears to be invalid xml due to some injection of backslashes when closing off an element. This appears to have been added in CASSANDRA-17294; It's possible that this worked at some point and was broken for some other reason. # Build fails because modules are not exported (e.g. missing {{--add-exports}}, {{-add-opens}}, which is needed for JDK11+. # Some dependencies, such as {{high-scale-lib}} includes package names that exist in the core jdk (such as {{java.util}} and {{java.util.concurrent}}) which causes ecj to complain and fail to build, this is fixable by adding {{org.eclipse.jdt.core.compiler.ignoreUnnamedModuleForSplitPackage=enabled}} to {{.settings/org.eclipse.jdt.core.prefs}}. # Classpath does not specify a minimum JDK requirement so an older JDK may be chosen which would fail the build (Not strictly necessary, but nice to remove any ambiguity about Java runtime selection) -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org