Skip to content

Populate more JavacOptionsResult info #105

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Dec 4, 2023

Conversation

Arthurm1
Copy link
Contributor

Adds classpath and classesDir to JavacOptionsItem

@Arthurm1
Copy link
Contributor Author

@microsoft-github-policy-service agree

@jdneo
Copy link
Member

jdneo commented Dec 1, 2023

Hi @Arthurm1,

Thank you for your contribution! And apologize for the late reply (It's the release week from my side).

I will review all your PRs ASAP!

Copy link
Member

@jdneo jdneo left a comment

Choose a reason for hiding this comment

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

Thank you @Arthurm1,

It looks good to me overall, just some Checkstyle violations. We can merge this PR after they are fixes.

@jdneo jdneo added the enhancement New feature or request label Dec 4, 2023
@jdneo jdneo added this to the 0.1.3 milestone Dec 4, 2023
@Arthurm1
Copy link
Contributor Author

Arthurm1 commented Dec 4, 2023

@jdneo I've fixed the checkstyle issues - I hadn't realised checkstyle was being used.

It would be good if checkstyle ran automatically on every PR that was submitted.

Copy link
Member

@jdneo jdneo left a comment

Choose a reason for hiding this comment

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

LGTM

@jdneo jdneo merged commit c103e82 into microsoft:develop Dec 4, 2023
@Arthurm1 Arthurm1 deleted the javac_options branch December 4, 2023 11:27
@jdneo
Copy link
Member

jdneo commented Dec 4, 2023

@Arthurm1 Thank you for the contribution.

I'm a little bit surprised that you created so many PRs, just asking out of curiosity, are you trying to integrate the Gradle build server somewhere?

@Arthurm1
Copy link
Contributor Author

Arthurm1 commented Dec 4, 2023

@jdneo lol - yes.

I'm trying to integrate it with Metals which is a Scala LSP but also does Java.

Currently Gradle is supported in Metals by exporting the config to Bloop (a Java/Scala build server) using Gradle Bloop plugin which I've contributed to - hence the weird test cases I'm adding here which have sprung up over the years.

One of the downsides of using Gradle + Bloop is that generated sources aren't really handled well and there's no good route for this as projects often define their own custom tasks for this which aren't easy to extract to pass to Bloop.

If I have time, I'd like to add run and test to this project and to handle the scala plugin which I think should all be possible. I see that the Gradle team are also creating a Problems API so in the future compiler diagnostics can be handled and sent back to the BSP client.

One thing I have no idea about is handling of debugging.

Do you have a roadmap on your plans for this project?

@jdneo
Copy link
Member

jdneo commented Dec 4, 2023

It's so exciting to hear that! More adoption will definitely improve the product!

I haven't a concrete ETA about the next big parts to deliver. But the things you mentioned are on our plan exactly.

I'd like to add run and test to this project

We are also considering delegating the test execution to the Gradle. Because for a Gradle project, test source sets can have their own classpath, while that concept does not apply to our project model in the Java Language server. So running Gradle tests is not well supported in VS Code Java

handle the scala plugin

That's great. Maybe we can think of some kind of contribution points allowing 'injecting' plugins to handle different kind of build targets. Besides Java & scala, we can also have things like Android, etc...

I'll try my best to review the opened PRs recently. Thank you again for your contributions. Let's keep in touch :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants