Resurrect kdev-java
ClosedPublic

Authored by davispuh on Mar 2 2019, 3:55 AM.

Details

Summary

Update to KF5 and latest KDevelop

Test Plan

Builds and loads in KDevelop, doesn't crash when opening Java file

Diff Detail

Repository
R65 KDevelop Java
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
davispuh created this revision.Mar 2 2019, 3:55 AM
Restricted Application added a project: KDevelop. · View Herald TranscriptMar 2 2019, 3:55 AM
Restricted Application added a subscriber: kdevelop-devel. · View Herald Transcript
davispuh requested review of this revision.Mar 2 2019, 3:55 AM

Only I had to disable tests, because they depend on kdevplatform/tests/*.h which doesn't get installed with KDevelop

apol added a comment.Mar 4 2019, 1:53 AM

Are you planning to maintain it?

flherne added a subscriber: flherne.Mar 4 2019, 3:03 AM

Nice work!

Only I had to disable tests, because they depend on kdevplatform/tests/*.h which doesn't get installed with KDevelop

These headers should normally be installed.

Some distro packages of KDevelop omit them, because of explicitly setting -DBUILD_TESTING=OFF during the build process.

You should be able to copy them manually, or add the source dir as an extra include path.

I tried this; it compiled successfully on my system, the plugin loads, but in quick testing I couldn't see any effects when opening a Java project.
What features are currently added by the plugin in this state?

davispuh updated this revision to Diff 53241.Mar 5 2019, 9:26 PM

Make tests buildable

In D19457#424138, @apol wrote:

Are you planning to maintain it?

Not really, Java isn't my love 😆

Only I had to disable tests, because they depend on kdevplatform/tests/*.h which doesn't get installed with KDevelop

These headers should normally be installed.

Some distro packages of KDevelop omit them, because of explicitly setting -DBUILD_TESTING=OFF during the build process.

You should be able to copy them manually, or add the source dir as an extra include path.

Yeah I realized I had KDevelop compiled without tests so now I built it with and made kdev-java tests buildable, but they fail, not sure why.

I tried this; it compiled successfully on my system, the plugin loads, but in quick testing I couldn't see any effects when opening a Java project.
What features are currently added by the plugin in this state?

That's pretty much why I did this to see if I could use KDevelop for Java but it appears that not really 😢 There's a lot of code but it seems it implements only Java parsing/syntax highlighting and code completion which looks like doesn't work. For this to be usable features I would need would be follow/jump to declaration/implementation and refactoring (rename package/class/method/variable)

Em ter, 5 de mar de 2019 às 18:36, Dāvis Mosāns <noreply@phabricator.kde.org>
escreveu:

davispuh added a comment. View Revision
https://phabricator.kde.org/D19457

In D19457#422812 https://phabricator.kde.org/D19457#422812, @davispuh
https://phabricator.kde.org/p/davispuh/ wrote:

Only I had to disable tests, because they depend on kdevplatform/tests/*.h
which doesn't get installed with KDevelop

These headers should normally be installed.

Some distro packages of KDevelop omit them, because of explicitly setting
-DBUILD_TESTING=OFF during the build process.

You should be able to copy them manually, or add the source dir as an
extra include path.

Yeah I realized I had KDevelop compiled without tests so now I built it
with and made kdev-java tests buildable, but they fail, not sure why.

I tried this; it compiled successfully on my system, the plugin loads, but
in quick testing I couldn't see any effects when opening a Java project.
What features are currently added by the plugin in this state?

That's pretty much why I did this to see if I could use KDevelop for Java
but it appears that not really 😢 There's a lot of code but it seems it
implements only Java parsing/syntax highlighting and code completion which
looks like doesn't work. For this to be usable features I would need would
be follow/jump to declaration/implementation and refactoring (rename
package/class/method/variable)

Well, it’s a welcoming first step.

*REPOSITORY*
R65 KDevelop Java

*REVISION DETAIL*
https://phabricator.kde.org/D19457

*To: *davispuh, kfunk, apol, kossebau, brauch
*Cc: *flherne, kdevelop-devel, gennad, glebaccon, domson, antismap,
iodelay, alexeymin, geetamc, Pilzschaf, akshaydeo, surgenight, arrowd

kfunk accepted this revision.Mar 6 2019, 7:52 AM

Only had a brief look, but this looks good to me! Well, better than letting it bit-rot.

Thanks!

This revision is now accepted and ready to land.Mar 6 2019, 7:52 AM
brauch accepted this revision.Mar 6 2019, 7:58 AM

Thanks, certainly better than bitrot. I can't really imagine it won't crash with any non-trivial project though :/

brauch added a comment.Mar 6 2019, 8:00 AM

FWIW kdev-java was to my knowledge never really working. I think at some point a lot of the code started as effectively a fork of the old C++ plugin, which was then gradually (but not thoroughly) adapted to java ...

This revision was automatically updated to reflect the committed changes.

ehhh, damn arc land, I didn't knew it will squash commits, oh well...