Skip to content

docs: update CONTRIBUTING.md for IntelliJ and JDK 17 setup (Fixes #405)#455

Open
rexminnis wants to merge 4 commits intoray-project:masterfrom
rexminnis:docs/fix-intellij-setup
Open

docs: update CONTRIBUTING.md for IntelliJ and JDK 17 setup (Fixes #405)#455
rexminnis wants to merge 4 commits intoray-project:masterfrom
rexminnis:docs/fix-intellij-setup

Conversation

@rexminnis
Copy link
Contributor

@rexminnis rexminnis commented Jan 19, 2026

What changes were proposed in this pull request?

Updated CONTRIBUTING.md to align the local development setup with the project's CI environment.

  • Java Version: Changed recommendation from JDK 8 to JDK 17.
  • IntelliJ Setup: Updated project SDK and Language Level settings to 17.

Why are the changes needed?

The current CI workflow (.github/workflows/raydp.yml) runs on JDK 17. The previous documentation recommended JDK 8, which causes "it works on my machine" issues when contributors submit code that passes locally but fails in CI due to version mismatches.

Does this PR introduce any user-facing change?

No, this is a documentation-only change for developers.

How was this patch tested?

  • Verified the instructions by setting up a fresh IntelliJ environment using the new steps.
  • Run mvn clean package -DskipTests to ensure the build succeeds with JDK 17.

@rexminnis rexminnis force-pushed the docs/fix-intellij-setup branch from 739f417 to 393a1c6 Compare January 22, 2026 02:46
CONTRIBUTING.md Outdated
RayDP is a mixed-language project (Scala + Python). To set up your development environment correctly, please ensure your system meets the following requirements.

### Prerequisites
* **Java:** JDK 8 (Required for Spark 3.x compatibility).
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you please also add information about JDK 17?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done — updated to mention both JDK 8 and JDK 17, with a recommendation to use 17 to match CI.

2. **Java SDK:** Ensure the project SDK is set to **Java 8**.
3. **Python Sources:** The `python/` directory in the root must be marked as a source root so your IDE can resolve the `raydp` package.

### Build & Verification
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we use the project build.sh here which builds the core part and then the python part? If you want, add explanation how it works or the manual steps.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done — added build.sh as the primary build method with an explanation, and kept the manual steps as an alternative.

@rexminnis
Copy link
Contributor Author

The CI failure in xgboost_ray_nyctaxi is an internal Ray serialization bug (AttributeError: 'str' object has no attribute 'language' in ray/exceptions.py) unrelated to this docs-only change.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants