Call for help

26 views
Skip to first unread message

Amenel Voglozin

unread,
Sep 30, 2022, 11:00:36 PM9/30/22
to mercuria...@googlegroups.com
Hi,

I have just moments ago sent the release announcement for MercurialEclipse 2.14.0.

At this point, Eclipse 2021-12 and later versions are STILL not supporteddue to issue #630. My investigations into this issue led me nowhere despite the amount of time I've spent working on it.

This is why I'm calling out to any previous maintainers, contributors or good-willed people to help solve this long-standing issue.

I'm at the end of my wits and I believe that MercurialEclipse cannot survive without your help. This is the impact that your input will have.

Thank you.
Amenel Voglozin | Maintainer

R Block

unread,
Apr 12, 2024, 3:43:27 AM4/12/24
to MercurialEclipse
Hi, Amenel. 
  I'd like to assist if possible but I am struggling to get my workspace setup.  My experience with Eclipse plugins is minimal.  I wrote a very simple but effective one many years ago.  

I found the readme at mercurialeclipse\plugin\README.md.  With regards to the documentation...
I Downloadied Eclipse RCP and Eclipse baseline.  This was confusing but I think I did it correctly.  I am using Eclipse RCP 2021-09(4.21.0) and eclipse 2020-09 for the baseline.

For Maven, I would suggest specifying which version of Maven you are using for reference for developers.  

I imported the projects into Eclipse RCP.  Some compilation problems showed as missing libraries(javahg, jsr305, guava).  I saw that they were listed in the pom.xmls.  My  first thought was to remove them and let Eclipse sort out the libraries.  But Eclipse RCP was not sorting them out, so I had to add them manually.

I did not understand what needed to be done with Mylyn.  I went to the Help -> Install New Software Dialog and entered in the Mylyn URL.  That did not resolve my "mylyn" package compilation problems.

I then tried to run "mvn verify" from mercurialeclipse/plugin.  The error I got was 
[ERROR] Internal error: java.lang.IllegalArgumentException: Could not find specification for custom execution environment profile 'JavaSE-18' in the target platform -> [Help 1]
https://gist.github.com/jwausle/7287c1171608ef3a17456364bb6a1386 but that did not help.  Should I try installing Java 11?  I have Java 18 installed.
Some documentation about the toolchains.xml you are using might help.  
At this point I felt hopelessly stuck and did not go further.  

I don't know if this reflects the writings of a total newbie to Eclipse plugins.  I might give it another try if you think I am not far off.

R Block

unread,
Apr 12, 2024, 3:43:42 AM4/12/24
to MercurialEclipse
Hi, Amenel,
  I made an attempt at setting up the developer workspace today.  My experience with Eclipse plugins is minimal.  I successfully made one small but effective plugin.

I found the file mercurialeclipse\plugin\README.md and I was working my way through it.
Below are my comments on the readme as I worked through the file.

On downloading Eclipse RCP and Eclipse baseline, it was confusing but I felt that I did it correctly.  I went with Eclipse RCP 2021-09(4.21.0).
I went with Eclipse Java 2020-09 for the baseline.
I did not understand the part about Mylyn.  I entered the Mylyn URL into the Help -> Install New Software dialog box and updated the plugin.  I am still seeing compilation errors on mylyn packages.

I cloned the code successfully.

My opinion is that you should give the version of Maven you are using.

After importing the projects into Eclipse, I had to work with the libraries (javahg, jsr305, guava).  I saw that these libraries were in the pom.xml files so my first thought was to remove them.  That did not fix anything.  Eclipse RCP still was not resolving these in Maven.  So I manually connected the files to their filepaths on the computer.

Running Maven
I thought Maven command line should still work so I went to mercurialeclipse\plugin to run "mvn verify".  

The error I got was[ERROR] Internal error: java.lang.IllegalArgumentException: Could not find specification for custom execution environment profile 'JavaSE-18' in the target platform -> [Help 1]
org.apache.maven.InternalErrorException: Internal error: java.lang.IllegalArgumentException: Could not find specification for custom execution environment profile 'JavaSE-18' in the target platform

I tried https://stackoverflow.com/questions/69244099/why-cant-maven-tycho-find-the-correct-jdk-in-toolchains-xml and https://gist.github.com/jwausle/7287c1171608ef3a17456364bb6a1386 but I could not resolve the problem.

Do you think I should install Java 11 or will Maven put some flags on the code for compatibility?

At this point I am stuck.  If the above reflects the writings of a total newbie to Eclipse plugins then I will give up.  But if you think I am not far off and have some ideas on how to move past these problems, I might give it another try.

Amenel Voglozin

unread,
Apr 12, 2024, 4:35:33 AM4/12/24
to mercuria...@googlegroups.com
Hi,
At this time, the documentation in the 'default' branch is probably a bit too detailed. I have edited the readme file in a different branch that is still a work in progress.

My current development environment is Eclipse 2021-09, JDK17 and Maven 3.9.4 but the version of Maven does not matter, that's why there is no mention of a specific version in the readme file.

Yes, you need a development instance (I recommend Eclipse 2021-09) and another instance, [incorrectly] called "baseline" in the documentation you have read, Eclipse 4.6 Neon. With this baseline, you do not need to do anything with Mylyn. You are having issues with Mylyn because this project was, after 2021-09, no longer included in the coordinated Eclipse releases. A later version "baseline" would do away with Mylyn but I have not yet merged the branch that has the updated documentation.

After downloading your Eclipse instances, the part of setting up your development environment that will take much time is the downloading of the p2 repository of Eclipse 4.6, for use with Tycho. This is mandatory because the project is built with Tycho, which requires the p2 repository. See section "Configuration for Tycho build" in the maintenance notes file.

After the download, you need to set up a local web server to serve the p2 repository (as a local mirror) via http.

After that, mvn clean package does the job: you do not need to configure libraries or anything else. I have to admit that this is the advantage of using Tycho for the builds, even if I never came to liking that tool. The errors in Eclipse should clear automatically after the first maven build since this copies libraries where they need to be found.

Again, the version of Maven does not matter, as long as the build succeeds. The minimal version is 3.6.3 and this is checked automatically during the build by a Maven plugin.

If you can wait a bit, I will schedule the reinstallation of a development workstation for next week, and follow the readme file again to see whether the instructions are still correct.

What is your goal with setting up a MercurialEclipse development environment?

Cheers!

--
You received this message because you are subscribed to the Google Groups "MercurialEclipse" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mercurialeclip...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mercurialeclipse/27ec44a3-53ec-4b3f-a7ca-aa18d915b7b8n%40googlegroups.com.

R Block

unread,
Apr 15, 2024, 4:26:47 AM4/15/24
to MercurialEclipse
I have time to wait.  My goal is to investigate https://foss.heptapod.net/mercurial/mercurialeclipse/-/issues/630.  I make no promises that I'll get anywhere.  I use MercurialEclipse for work.  It's my preferred tool.  I understand that Eclipse 2021-09 was the last version without problems, I can't stay on that.  

The biggest problems that I encounter are 
1)Sometimes, MercurialEclipse "loses track" of a file or a folder.  It will no longer recognize an individual file for unknown reasons.  Restarting Eclipse resolves this.
2)When I click through several files quickly, if the Mercurial View has the button that shows the history of the currently selected file down, it will queue up a job for each file and then block up my process queue.  This was a problem before the Eclipse 2021-09 version.  I wish that it was just a button press and not a toggle.

Amenel Voglozin

unread,
Apr 22, 2024, 7:27:54 AM4/22/24
to mercuria...@googlegroups.com
Hi Russell,
Here is a log of what I did to get an error-free workspace for development.

I'm using JDK 17 version "17.0.10" 2024-01-16 as default JDK (in PATH as well as JAVA_HOME and JDK_HOME environment variables).
- Unzipped eclipse-rcp-2021-09-R-win32-x86_64.zip using a fresh workspace and installed current MercurialEclipse plugin from https://foss.heptapod.net/mercurial/mercurialeclipse-updatesite/-/raw/branch/default/p2. This is the development instance.
- Added Console view and ticked "Show all Mercurial messages" in Version Control > Mercurial > Console
- Downloaded Eclipse SDK Neon with a fresh workspace (found at https://archive.eclipse.org/eclipse/downloads/drops4/R-4.6-201606061100/) to be used as reference instance.
- In the development instance, configured the Neon SDK instance as target platform (no configuration of API baseline)
- Cloned the source code with "hg clone ssh://h...@foss.heptapod.net/mercurial/mercurialeclipse" and imported the Maven projects into the development instance.
- Accepted the installation proposed in the "Discover m2 connectors dialog" and restarted Eclipse.
- In all projects with an error mark, I used Quick Fix to mark problematic goals (update-pom and run) as ignored in Eclipse preferences. This may be where you were stuck.
This gives a clean workspace that can be used for the two issues you mentioned.

For building the project from command line:
- Configured local web server to the p2-mirrors folder as per instructions in the maintenance-notes.md file
- I downloaded Maven 3.9.6 and configured it in the PATH
- a JDK 8 is necessary, with the following two commands "set path=%JDK8%\bin;%PATH%" and "set JAVA_HOME=%JDK8%" run before "mvn clean package". At this point, the build command succeeds without issue.

Trying again to install the development environment made me realize that the readme had a few errors. I'll fix these in a few days.

I didn't get beyond 1-having zero problem markers in Eclipse, and 2- having a successful build on the command line.
Let me know if you need more information.
Thank you for your desire to help.

Amenel Voglozin

unread,
Apr 27, 2024, 2:43:51 AM4/27/24
to mercuria...@googlegroups.com
Hi,

I have updated the readme file in the source code repository. Please refer to that in lieu of my previous email reply, which was incomplete. 
Doing one more time the entire process led me to adjusting the instructions.

Hope that helps.
Reply all
Reply to author
Forward
0 new messages