RFR: 7903964: Fix NPE in JTRegConfiguration.getJDKString

Oleksii Sylichenko duke at openjdk.org
Fri Mar 7 16:54:09 UTC 2025


On Fri, 7 Mar 2025 15:14:25 GMT, Jorn Vernee <jvernee at openjdk.org> wrote:

>> # This bug appears when
>> - The user removes the "Build" target from "Before launch" in the Run Configuration.
>> - The user unsets or does not set the Project SDK, or if it has been removed from the file system.
>> 
>> # Steps to reproduce
>> 
>> 1. Open a JDK project.
>> 2. Open "Project Structure".
>> 3. Select an SDK in the Project tab.
>> 4. Navigate to "Settings → jtreg".
>> 5. Set "JRE = "Default".
>> 6. Run a test to automatically create a run configuration, or manually create one with "JRE = Default".
>> 7. Open Project Structure again.
>> 8. Set SDK = "<No SDK>".
>> 9. Edit the previously created Run Configuration and remove the "Build" target from "Before launch".
>> 10. Run the previously created Run Configuration.
>> 
>> ## Expected
>> - Error message appeared: "No valid JDK configured for running jtreg tests"
>> 
>> ## Actual:
>> - Nothing happened
>> 
>> # Implemented Changes
>> 
>> ## JTRegConfiguration.java
>> - Add the `@NotNull` annotation to methods that are missing it but have it in the parent method.
>> - Add javadoc to `getJDKString`.
>> - Refactor `getJDKString`:
>>   - Fix method getJDKString, to prevent NPE when Default SDK for the project was not set
>> 
>> ## JTRegConfigurationRunnableState.java
>> - Change visibility to `public` to eliminate the warning in `JTRegConfiguration#getState`.
>
>> Nothing happened
> 
> When I tested this, it was actually worse: the Run option was disabled entirely, and I had to restart the IDE to bring it back. I have created: [7903964](https://bugs.openjdk.org/browse/CODETOOLS-7903964) Please change the PR title to:
> 
> 
> 7903964: Fix NPE in JTRegConfiguration.getJDKString

@JornVernee, thank you for creating the issue. I have removed "final" from the local variables.

-------------

PR Comment: https://git.openjdk.org/jtreg/pull/251#issuecomment-2706940637


More information about the jtreg-dev mailing list