Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 332714

Summary: Publisher doesn't rename eclipsec.exe, only eclipse.exe is renamed to the desired launcherName
Product: [Eclipse Project] Equinox Reporter: Holger Oehm <holger.oehm>
Component: p2Assignee: Torbjörn Svensson <torbjorn.svensson>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: arthur.daussy, cdtdoug, christian.pontesegger, email, gunnar, IngedevTeam.fr, jeffmcaffer, kane.mx, kane.zhu, markus.duft, mistria, peter, saminathan80, t-oberlies, torbjorn.svensson
Version: unspecified   
Target Milestone: 4.20 M1   
Hardware: All   
OS: All   
See Also: https://git.eclipse.org/r/c/equinox/rt.equinox.p2/+/178151
https://git.eclipse.org/c/equinox/rt.equinox.p2.git/commit/?id=753385cc32a3320007b4f275f09676322c291b3d
Whiteboard:

Description Holger Oehm CLA 2010-12-16 05:22:24 EST
Build Identifier: I20100608-0911

When you specify a name for the launcher in a product file (<launcher name="foo"/>), the published binary artifact will contain two executables, one named foo.exe (this is correct) and one is named eclipsec.exe (this is the errorneous behavior, it should be named fooc.exe).

The result of this is that in the installation of the product (performed with the director later on) the executable foo.exe behaves correctly (as it reads its parameters from the foo.ini file) and the eclipsec.exe behaves bad (as it does not read the the foo.ini file).

If the eclipsec.exe file had been named fooc.exe it would correctly read the same foo.ini file as the foo.exe application and no problem would occur.


Reproducible: Always

Steps to Reproduce:
1. Create a product that has set the launcher name to something else than eclipse (e.g. <launcher name="foo"/>).
2. Run the P2 publisher to publish this product.
3. Look into the binary folder in the created target and examine the artifact there (it is a zip file, but has no extension .zip).
Comment 1 Holger Oehm CLA 2010-12-16 09:55:41 EST
When using the "Eclipse Product export wizard" in the PDE the behavior is different: No console application appears at all. (Neither fooc.exe nor eclipsec.exe is present in the exported product.)
Comment 2 Jeff McAffer CLA 2010-12-16 10:11:37 EST
This is very closely related to Bug 327707. 

Years ago we (PDE and p2) made a conscious decision to not brand eclipsec.exe.  In retrospect that may have been a bad choice.  This bug and Bug 327707 are essentially seeking to enhance the current p2/PDE behaviour.  As such, I don't think this one blocks Bug 331974 which is seeking to harmonize the infrastructure.  I'd like to keep the dependency list focused on that task.
Comment 3 Doug Schaefer CLA 2013-06-22 17:15:58 EDT
Sigh. This is still open?
Comment 4 saminathan s CLA 2015-03-31 07:19:20 EDT
Any update on this?
Comment 5 saminathan s CLA 2015-03-31 07:34:07 EDT
Can you please explain the reason why it was consciously chosen not to brand eclipsec.exe?
Comment 6 Tobias Oberlies CLA 2015-04-07 05:08:20 EDT
(In reply to comment #5)
> Can you please explain the reason why it was consciously chosen not to brand
> eclipsec.exe?
This didn't need a conscious decision - it was just never implemented. eclipsec.exe is something that only exists for Windows, so it would have needed special handling for this case.

I guess the main reason why this wasn't done is that it isn't clear what the correct solution is. In comment #0, the proposal is to use "fooc.exe" when the main executable is called "foo.exe". But is a constant "c" suffix really the solution that all users whould be happy with?
Comment 7 Markus Duft CLA 2015-10-20 09:31:57 EDT
We have a problem with this fact: eclipsec.exe does not pick up the launcherName.ini file. In a scenario where for example Java7 is default and Java8 is required, and configured in the launcherName.ini file, eclipsec.exe will result in a failing application! This is IMHO not an "enahncement" in this case anymore - more like a major for us ;)
Comment 8 Mickael Istria CLA 2020-07-07 12:15:29 EDT
*** Bug 550360 has been marked as a duplicate of this bug. ***
Comment 9 Eclipse Genie CLA 2021-03-21 08:20:54 EDT
New Gerrit change created: https://git.eclipse.org/r/c/equinox/rt.equinox.p2/+/178151
Comment 11 Mickael Istria CLA 2021-03-22 03:57:24 EDT
Thanks Tobjorn. I'm marking as resolved since I'm under the impression the patch you submitted fixes it all. Feel free to reopen if I'm missing something.
Comment 12 Torbjörn Svensson CLA 2021-03-22 04:23:57 EDT
(In reply to Mickael Istria from comment #11)
> Thanks Tobjorn. I'm marking as resolved since I'm under the impression the
> patch you submitted fixes it all. Feel free to reopen if I'm missing
> something.

Thanks Mickael for reviewing the gerrit.
As I said in the gerrit, I've not run the code as I don't know how to import it into tycho, but according to me, it should work.
In any case, the changeset is supposed to address the issue that there will be a launcher called "eclipsec.exe" when the launcher is branded. With the changeset, the launcher will instead be called <branded name>c.exe.
Comment 13 Arthur Daussy CLA 2022-05-25 11:27:11 EDT
Just a comment to confirm that the bug has been fixed (Just tried with Tycho 2.7.3)