Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Learn more about Collectives

Teams

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Learn more about Teams

I am trying to get an Eclipse plugin (originally developed for Eclipse Neon and Java 8) working and cannot load in the target platform. My system config is as follows:

  • Machine: 2021 MacBook Pro (M1 Pro)
  • Java Version: Java SE 17.0.1 (also tried JDK 8 Temurin)
  • Eclipse 2021-12 (4.22.0) (although I have also tried installing Eclipse Neon on this machine and got the same problem)
  • When I try to load in the target platform (included at the bottom of the post) I get the following errors:

    Problems occurred while resolving the target contents
        Cannot complete the install because one or more required items could not be found.
            Cannot satisfy dependency:
                From: Equinox p2, Provisioning for IDEs. 2.2.201.v20161124-1529 (org.eclipse.equinox.p2.user.ui.feature.group 2.2.201.v20161124-1529)
                To: org.eclipse.equinox.p2.iu; org.eclipse.equinox.p2.core.feature.feature.group [1.3.201.v20161115-1950,1.3.201.v20161115-1950]
            Cannot satisfy dependency:
                From: Eclipse Platform 4.6.2.M20161124-1400 (org.eclipse.platform.ide 4.6.2.M20161124-1400)
                To: org.eclipse.equinox.p2.iu; org.eclipse.equinox.p2.user.ui.feature.group [2.2.201.v20161124-1529,2.2.201.v20161124-1529]
            Missing requirement for filter properties ~= $0: Equinox p2, headless functionalities 1.3.201.v20161115-1950 (org.eclipse.equinox.p2.core.feature.feature.group 1.3.201.v20161115-1950) requires 'org.eclipse.equinox.p2.iu; org.eclipse.equinox.security.macosx [1.100.200.v20130327-1442,1.100.200.v20130327-1442]' but it could not be found
            Software being installed: Eclipse Platform 4.6.2.M20161124-1400 (org.eclipse.platform.ide 4.6.2.M20161124-1400)
    

    The target platform is:

    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <?pde version="3.8"?>
    <target name="visuflow" sequenceNumber="42">
    <locations>
    <location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="true" type="InstallableUnit">
    <unit id="org.eclipse.platform.ide" version="4.6.2.M20161124-1400"/>
    <unit id="org.eclipse.pde.feature.group" version="3.12.2.v20161124-1400"/>
    <unit id="org.eclipse.pde.source.feature.group" version="3.12.2.v20161124-1400"/>
    <unit id="org.eclipse.rcp.feature.group" version="4.6.2.v20161124-1400"/>
    <unit id="org.eclipse.rcp.source.feature.group" version="4.6.2.v20161124-1400"/>
    <repository location="http://download.eclipse.org/eclipse/updates/4.6"/>
    </location>
    <location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="true" type="InstallableUnit">
    <unit id="org.apache.commons.lang" version="2.6.0.v201404270220"/>
    <unit id="org.apache.commons.lang.source" version="2.6.0.v201404270220"/>
    <repository location="http://download.eclipse.org/tools/orbit/downloads/drops/R20160520211859/repository/"/>
    </location>
    </locations>
    <implicitDependencies>
    <plugin id="org.apache.felix.gogo.command"/>
    <plugin id="org.apache.felix.gogo.shell"/>
    <plugin id="org.eclipse.core.net"/>
    <plugin id="org.eclipse.equinox.console"/>
    <plugin id="org.eclipse.ui.ide"/>
    <plugin id="org.eclipse.pde.runtime"/>
    <plugin id="org.eclipse.equinox.ds"/>
    <plugin id="org.eclipse.ui.ide.application"/>
    <plugin id="org.apache.felix.gogo.runtime"/>
    </implicitDependencies>
        <targetJRE path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.launching.macosx.MacOSXType/Eclipse Temurin 8 [1.8.0_312]"/>
    </target>
    

    Thanks in advance for any help.

    EDITS:

  • @greg-449 was correct in pointing out the conflicting architectures. I was originally running on aarch64, but when I downloaded x86_64 Eclipse/Java, the plugins resolved. However, now I have a different issue, still related to conflicting architectures. When trying to launch my plugin:
  •     /Users/austin/eclipse-workspace/visuflow/.metadata/.plugins/org.eclipse.pde.core/New_configuration/org.eclipse.osgi/132/0/.cp/libswt-cocoa-4628.jnilib: dlopen(/Users/austin/eclipse-workspace/visuflow/.metadata/.plugins/org.eclipse.pde.core/New_configuration/org.eclipse.osgi/132/0/.cp/libswt-cocoa-4628.jnilib, 0x0001): tried: '/Users/austin/eclipse-workspace/visuflow/.metadata/.plugins/org.eclipse.pde.core/New_configuration/org.eclipse.osgi/132/0/.cp/libswt-cocoa-4628.jnilib' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64e')), '/usr/lib/libswt-cocoa-4628.jnilib' (no such file)
                    org.eclipse.equinox.p2.iu means a p2 installer "Installation Unit" - a plug-in or feature. What is missing is the org.eclipse.equinox.security.macosx plug-in.
    – greg-449
                    Jan 5, 2022 at 7:24
                    I notice you are using a M1 Mac - are you using the aarch64 Java / Eclipse? Older target platforms will only have an x86_64 version of the missing plug-in.
    – greg-449
                    Jan 5, 2022 at 7:38
                    @greg-449 You were right, downloading and using the x86_64 version of Eclipse and Java fixed this issue. However, now I'm getting an issue with SWT (see edit above), seemingly also caused by an architecture mismatch.
    – Austin Mordahl
                    Jan 5, 2022 at 22:15
                    That message looks like you are trying to run a x86_64 rcp with a aarch64 Java - the Java and RCP must be the same. If you want to run with aarch64 you will need to build with the current Eclipse, not 4.6 which is 16 releases old.
    – greg-449
                    Jan 6, 2022 at 8:04
    

    For anyone who has similar problem for:

    requires 'org.eclipse.equinox.p2.iu; org.eclipse.equinox.util 1.0.400'
    

    First solution: I would recommend checking which Eclipse version you have installed. I installed the newest and by default and I got 'Eclipse IDE for Java Developers' from the official Eclipse page. If you spend 2 more minutes you can find 'Eclipse IDE for Enterprise Java and Web Developers' - it is more advanced and it looks like some plugins work only on this version.

    Second solution: Add to "Available Software Sites" new site name: Eclipse Oxygen.2 URL: http://download.oracle.com/otn_software/oepe/library/eclipse-oxygen.2

    I tested the above solutions and both of them work for me. Cheers.

    Confirmed for using download.oracle.com/otn_software/oepe/library/eclipse-oxygen.2 as an update site with 2022-06. – mrswadge Jul 28, 2022 at 10:23

    2022-09 eclipse works with second solution dKuch..

    Eclipse -> Help -> Available Software Sites" new site name: Eclipse Oxygen.2 URL: http://download.oracle.com/otn_software/oepe/library/eclipse-oxygen.2

    find "macosx"

    in my case I just tick and install everything :D

    I had the same problem when installing Kiuwan in Spring Tool Suite and the solution is available on the Kiuwan website, in the Note for Eclipse 2019-12 users (or following versions) section.

  • Open the "Window" > "Preferences" dialog.
  • Select "Install/Update" > "Available Software Sites" option.
  • Click on the "Add..." button. A new dialog will be shown with two text fields.
  • Set the "Name" field to "Eclipse Oxygen.2"
  • Set the "Location" field to "http://download.oracle.com/otn_software/oepe/library/eclipse-oxygen.2"
  • Click the "Add" button. This will add the defined software site to your list.
  • Check the "Eclipse Oxygen.2" software site in the list if it is not already checked.
  • Thanks for contributing an answer to Stack Overflow!

    • Please be sure to answer the question. Provide details and share your research!

    But avoid

    • Asking for help, clarification, or responding to other answers.
    • Making statements based on opinion; back them up with references or personal experience.

    To learn more, see our tips on writing great answers.