分类: Eclipse Coding

  • Running the Angular Server

    The Angular Server included in our Angular IDE allows you to quickly deploy and test your Angular apps. The Angular Server is included in our Angular IDE, CodeMix Eclipse plugin, and MyEclipse Java EE IDE.

    Introduction
    When working with Angular, you need to use Node to actually service the files to be used — whether that is using Node to build the files to be serviced by Nginx, or directly serving them from Node. During development, the Angular IDE focuses on using the angular-cli’s serve flow which provides both basic serving of resources, as well as reloading of the application on change.

    There are three ways to run the Angular application in development with Angular IDE:

    Run the application from the Servers view.
    Debug the application
    Run the application from the command line.
    Run the Angular Application from the Servers view
    The simplest case to use Angular applications inside the Angular IDE is to navigate to the Servers view and click the Start button on the desired application. The application automatically starts in the Terminal+ view where the output can be seen and any build errors will be reported in the editors.

    The angular-cli server will automatically monitor for changes on files and rebuild them. Any build errors are relayed into the IDE simplifying development, and at any time, the output of the server can be seen in the Terminal+ view for the given project.

    For more information on the normal lifecycle of application development, see Creating Your First Angular Application.

    Debug the Angular Application
    When working with components, debugging the behavior is key to quickly diagnosing problems in the TypeScript code. To that end, the Angular IDE provides integrated support for debugging Angular applications by simply setting breakpoints in the desired TypeScript class and then running the application in Debug mode.

    2-enablingbeakpoint

    Once the breakpoints are enabled, simply start up the server in debug.

    3-appindebug

    Upon startup of the application, the locally installed Google Chrome browser is automatically started with a debug session active for the application. Navigate to the appropriate place in the application to hit the desired source code and the breakpoint will be hit in the TypeScript code inside the IDE. Variables and other values will be available for inspection.

    For more information on debugging your Angular application, see Debugging in CodeMix.

    Run the Angular Application from the Command Line
    For modern web developers, the Angular IDE respects the importance of the command-line and is set up to allow easy usage of current workflows. In the case of running applications, the Angular application can be started from any command shell simply by using the ‘ng serve’ command supported by the angular-ide. As long as the application has the angular-ide package enabled for development, the Angular IDE will automatically be notified of the launch and continue to report status and build errors back into the IDE.

    To do this inside the Angular IDE, select the Project in the Terminal+ view, click the plustab tab to start an interactive shell, and then type ng serve on the command line.

    4terminalngserve

    When running outside of the Terminal+ view, it is important to pay attention to the path to the corresponding angular-cli for the project. It is located at (project-path)/node_modules/.bin/ng. Using the wrong version of the angular-cli can skew testing. For simplicity, it is recommended to use Terminal+ as the correct path is automatically configured.

  • Developing a REST Web Service

    Develop REST web services to amp up your web applications. In this tutorial example, you will create a simple web service for maintaining a list of customers. You will learn to:

    Develop a REST web service
    Deploy to the Tomcat serve
    Test with the REST Web Services Explorer

    1. Begin with a REST Web Service Project
      The REST Web Service Project wizard gets you started with your project configuration.

    Select File>New>Web Service Project.
    Type restdemo in the Project Name field, select the JAX-RS (REST Web Services) framework option, and click Next.

    newwsproject
    Creating a Web Service project
    Accept the default source folder, and click Next.
    Click Finish to accept defaults for the purpose of this example.
    newwsprojectfinish
    Finishing the project

    1. Create a New REST Web Service
      With your project in place, you can create your web service. You will create classes necessary for managing the customer entity and a class for your resource methods.

    2.1 Creating the Customer entity
    This simple Customer class contains id, name, and address fields and represents the Customer entity you manage with the web service.

    Right-click the restdemo project, and select New>Class.
    Type com.myeclipseide.ws in the Package field, type Customer in the Name field, clear the Public Static Void Main checkbox if selected, and click Finish.

    wsnewclass
    Creating a Java class
    Replace the default contents of the generated class with the following code, and save the file.

    package com.myeclipseide.ws;

    import javax.xml.bind.annotation.XmlRootElement;
    @XmlRootElement

    public class Customer {
    private int id;
    private String name;
    private String address;

    public int getId() {
    return id;
    }

    public void setId(int id) {
    this.id = id;
    }

    public String getName() {
    return name;
    }

    public void setName(String name) {
    this.name = name;
    }

    public String getAddress() {
    return address;
    }

    public void setAddress(String address) {
    this.address = address;
    }

    }

    You are using XML as the serialization format, i.e. you send and receive Customer entities from the web service using XML.

    The @XMLRootElement annotation in the Customer class is a JAXB annotation that allows JAXB to convert this entity from Java to XML and back. It is possible to annotate the fields and methods within the class to customize the serialization, but for this tutorial, the JAXB defaults are fine.

    2.2 Create the Resource Class, the Core of the Web Service
    Right-click the restdemo project, and select New>Other.
    Type web service in the filter field, select Web Service, and click Next.

    wsnewwsmenu
    Creating the new web service
    Select the Create web service from Java class option, select the Create new Java bean checkbox, and click Next.

    wsnewws
    Creating the new web service
    Type customers in the URL path field, select the Singleton Lifecycle option, select application/xml from the Produces drop-down, type com.myeclipseide.ws in the Java Package field, and type CustomersResource in the Java class field.

    wsnewwsconfig
    Web service configuration details

    URL path—Indicates the path at which this resource can be reached. For this tutorial, you use customers because this resource manages our customer list. The resource will be hosted at “/customers”.
    Singleton Lifecycle—Ensures only one instance of this class is created by Jersey per web-application.
    Consumes and Produces—Can be used to specify the default mime type(s) of data this resource can accept and generate. These values can be overridden by individual methods in the class. As mentioned above, you are serializing to XML, so you use the application/xml mime type.
    Click the Add button to add the method that fetches a list of customers.
    Type getCustomers in the Method name field, java.util.List in the Return type field, and click Finish.

    wsnewmethod
    Adding a method

    HTTP method—Can be used to specify the type of HTTP request this method responds to, in this case.
    Method Signature preview—Updated as you make changes to the page, giving you an idea of what your generated method will look like.
    Click the Add button again to add a method that returns details of a specific customer.
    Type getCustomer in the Method name field, Customer in the Return type field, and {id} in the URL path field.

    wsnewmethod2get
    Adding a second method
    Click the Add button to add a Method parameter. Type int in the Java Type field, cId in the Java Name field, select PathParam from the Param Type drop-down, and type id in the Param Name field. Click Finish.

    wsnewmethodparameters
    Adding method parameters

    URL Path—Specifies the path at which this method can be reached, relative to the containing resource.
    In this case you specify {id}, which means this resource method can be reached at /customers/{id}. The curly braces denote a URI variable. These variables are substituted at runtime for a resource to respond to a request based on the substituted URI.
    Parameters—Edit the parameters directly in the table. Because you need the value of the id variable, you use the PathParam annotation to map it to the cId parameter.
    Add a method that allows you to add a new customer to the list. Fill in the fields as shown below, and click Finish.

    wsnewmethod3
    Creating the addCustomer method

    In this case, you’re responding to a POST request and expect application/xml input, which would be deserialized into the customer parameter. The customer parameter is an Entity parameter (unannotated) and is mapped directly from the message body of the incoming request. You also override the default application/xml output specified by the CustomersResource class and specify text/html instead.

    After adding those three methods, the configuration should look like this:

    wsfinalwsconfig
    Final web service configuration
    Click Finish to generate the CustomersResource class. Open the file to see stubbed out resource methods.

    1. Provide Implementations for the Methods You Generated
      Now, you need to provide implementations for the methods you created using the wizard. In a real application, at this point you would probably wire in a database using JPA or Hibernate to help manage the customer list, but a simple in-memory map is sufficient for this tutorial.

    The implementation is simple; when a customer is received by the service, you give the entity a counter-based id and add it to the map. Retrieving a customer from this map by id and providing a list of customers is straight forward as you can see below.

    Replace the content in the CustomersResource class with the following code. Observe that the class and method signatures have not changed. You are fleshing out the generated stubs with an implementation of the service. You also add a single customer to the list for demonstration purposes.

    package com.myeclipseide.ws;
    import java.util.ArrayList;
    import java.util.List;
    import java.util.TreeMap;
    import javax.ws.rs.Consumes;
    import javax.ws.rs.GET;
    import javax.ws.rs.POST;
    import javax.ws.rs.Path;
    import javax.ws.rs.PathParam;
    import javax.ws.rs.Produces;
    import com.sun.jersey.spi.resource.Singleton;
    @Produces(“application/xml”)
    @Path(“customers”)
    @Singleton

    public class CustomersResource {
    private TreeMap customerMap = new TreeMap();
    public CustomersResource() {
    // hardcode a single customer into the database for demonstration
    // purposes

    Customer customer = new Customer();
        customer.setName("Harold Abernathy");
        customer.setAddress("Sheffield, UK");
        addCustomer(customer);
    }

    @GET
    public List getCustomers() {
    List customers = new ArrayList();
    customers.addAll(customerMap.values());
    return customers;
    }
    @GET
    @Path(“{id}”)
    public Customer getCustomer(@PathParam(“id”) int cId) {
    return customerMap.get(cId);
    }
    @POST
    @Path(“add”)
    @Produces(“text/plain”)
    @Consumes(“application/xml”)

    public String addCustomer(Customer customer) {
        int id = customerMap.size();
        customer.setId(id);
        customerMap.put(id, customer);
        return "Customer " + customer.getName() + " added with Id " + id;
    }

    }

    1. Deploy the Web Service Application
      The fastest way to deploy the web service is by using the Run As or Debug As MyEclipse Server Application action.

    Right-click the project, and select Debug As (or Run As)>MyEclipse Server Application.
    Select MyEclipse Tomcat, and click Finish.

    Selecting a server for deployment
    MyEclipse performs the following steps:

    Packages the Web Service project and deploys it in Exploded format to the application server
    Starts the application server and loads the project
    The MyEclipse Web Browser opens the default index.jsp page of our the Web Service application. You don’t need this because you aren’t testing a web page, so you can close this view.

    1. Test with the REST Web Services Explorer
      The REST Web Services Explorer is unavailable at the MyEclipse Standard subscription level. If you are a MyEclipse Standard subscriber, follow the instructions in Testing a Web Service Using a Standard Browser.

    Right-click the restdemo project, and select Web Service Tools>Test with REST Web Services Explorer .

    Note: If you deployed restdemo to an application server other than MyEclipse Tomcat, the WADL URL used in the explorer could contain an incorrect port, preventing the explorer from loading your WADL file. Correct the port, and click the Go button to proceed.

    You can also open the REST Web Services Explorer by clicking the drop-down arrow on the Web Services Explorer icon on the toolbar, and selecting Launch REST Web Services Explorer. In this case, you must enter the path of a WADL file in the address bar before proceeding.

    Expand the tree to the {id} node, and select the getCustomer method.

    wstestmethod
    Selecting the method to test
    Click Test method. A new tab opens where you can enter information and run the test.

    wstestmethodgetcustomer
    getCustomer tab for testing the method
    Type 0 in the id field, and click the Run Test icon .

    wstestmethodrun
    Retrieving the one customer in the list
    Close the getCustomer tab.
    Expand add in the tree, select the addCustomer method, and click Test method.
    In the Body, type application/xml area of the addCustomer tab, paste the following code, and click .

    Bill AdamaVancouver, Canada
    The response confirms, Customer Bill Adama added with Id 1.

    wstestmethodadd
    Testing the add function
    Close the addCustomer tab.
    Select getCustomers in the customers node, and click Test method.
    Click . The two customers in the list are returned by the service in XML.

  • The Eclipse Foundation Launches The Eclipse Cloud Development Tools Working Group for Cloud Native Software

    – New Working Group includes founding members
    Broadcom, IBM, Red Hat, SAP, and others –

    OTTAWA – October 8, 2019 – The Eclipse Foundation today announced the launch of the Eclipse Cloud Development Tools Working Group (ECD WG), a vendor-neutral open source collaboration that will focus on development tools for and in the cloud. The ECD WG will drive the evolution and broad adoption of emerging standards for cloud-based developer tools, including language support, extensions, marketplaces, and developer workspace definition. Founding members of the ECD WG include Broadcom, EclipseSource, Ericsson, IBM, Intel, Red Hat, SAP, Software AG, and Typefox among many others.

    “Our own survey of developers has shown that cloud native applications are of critical importance for today’s enterprises,” said Mike Milinkovich, executive director of the Eclipse Foundation. “More than 80 percent of the developers surveyed have plans to create cloud native applications within the next 12-18 months. It is this demand that drove the formation of this working group.”

    The ECD WG encompasses a broad portfolio of open source cloud development projects including Eclipse Che, Eclipse Theia, Eclipse CodeWind, Eclipse Dirigible, Eclipse Sprotty, and many more. The ECD WG will work to accelerate the adoption of Cloud Integrated Development Environment (IDE) and container-based workspace management through the adoption of standards, the engagement with third party developer tool providers, and through the promotion of Eclipse Foundation projects to cloud developers.

    In addition, the group will explore the impacts and optimizations for running developer tools in a cloud environment, including scale out / scale-to-zero execution of compute-intensive tasks like CI and testing. A very timely example of these efforts includes the recent release of Eclipse Che 7, the world’s first Kubernetes-native IDE, on September 17, 2019. Che 7 is specifically designed for creating cloud native enterprise applications. Interested parties can read more about this release here.

    Home to the Eclipse Desktop IDE, the Eclipse Foundation has a proven track record of enabling developer-focused open source software collaboration and innovation earned over 15 years. As one of the world’s most popular desktop development environments, the Eclipse IDE is downloaded over 2 million times per month, and is a critical development environment for more than 4 million active users. Overall, the Foundation’s more than 370 collaborative projects have resulted in over 195 million lines of code — a $10 billion shared investment.

    To learn more about getting involved with the ECD WG, view the Charter and ECD Working Group Participation Agreement (WPGA), or email us at membership@eclipse.org. You can also join the ECD Tools mailing list.

    Quotes from Eclipse Cloud Development Tools Working Group Members
    EclipseSource
    “As a service provider for the design and implementation of domain-specific tools, modeling tools, and IDEs, EclipseSource is very excited to actively participate in the ECDT working group,” said Dr. Jonas Helming, principal software architect / general manager of EclipseSource Munich. “In our customer projects around the globe, we can observe an increasing demand for web-based and cloud-based tooling. Quite a number of interesting technologies have already been emerged within the Eclipse ecosystem to support this use case, e.g. Eclipse Theia, Eclipse Che or the Graphical Language Server Protocol (GSLP). Coordinating these efforts in the scope of the working group will help contributors, service providers, and adopters to get the most benefit out of great open source technologies. We believe the Eclipse ecosystem has the potential to be a core ecosystem for web-based tooling in the upcoming decade as it is for desktop-based tools.”

    IBM
    “Application development is evolving rapidly to take advantage of the innovation in the multicloud ecosystem. Developer tools are critical in accelerating adoption of new technology and enabling enterprise developers in the modernization journey to the cloud,” said Danny Mace, vice president, Hybrid Cloud App Platform, IBM. “We are proud to join the Eclipse Cloud Development Working Group working to drive the evolution and broad adoption of cloud development tools. Working at Eclipse will expand tools communities for containerized applications on Kubernetes and offer developers the tools needed for cloud-based scenarios. Developers will benefit, as will our customers.”

    Red Hat
    “Developers today are building applications for the hybrid cloud. They are focused on the speed of collaboration and development in order to out-flank their competitors. However, the hybrid cloud operating environment can be complex, with Kubernetes, containers, microservices and service mesh’s adding a host of new considerations to application design and implementation,” says Brad Micklea, VP of Developer Tools and Advocacy at Red Hat. “Red Hat is working with the Eclipse Cloud Development Working Group to provide new open source alternatives to these technology stacks while giving developers the tools they need to get their software to market faster.”

    SAP
    “For the past 5 years SAP has provided cloud development tools, while aligning with the latest technologies, standards, and open source trends,” said Michael Wintergerst, senior vice president, head of SAP Cloud Platform Core. “As a strategic member of the Eclipse Foundation, SAP actively participates in Eclipse Cloud Development projects. This participation includes an involvement in the Eclipse Che, Dirigible,Theia, and Orion projects. As a next step, the proposed Eclipse Cloud Development Tools Working Group aims to create a stimulating environment to collaborate on cloud development tools. The working group will increase the synergy between all relevant parties by creating shared concepts and standards, and foster further collaboration in an open environment.”

    TypeFox
    “At TypeFox’s, we build software tools and IDEs for experts,” says Dr. Jan Köhnlein, co-founder TypeFox. ”As a response to the growing demand to run these tools in the Cloud, we joined forces with Ericsson and initiated the open-source projects Theia, a framework for cloud-based or rich-client IDEs, and Sprotty for web-based diagramming. Moving these projects under the umbrella of the Eclipse Foundation allowed other big players to join in a common endeavor to build the solid foundation for the next generation of web-based tools. The Eclipse Cloud Development Tools Working Group stands for the commitment to keep these frameworks industrial strength, truly open-source and vendor neutral.”

  • Payara Server is Jakarta EE 8 Compatible

    Payara Server 5.193.1 is Fully Certified as an Open Source Jakarta EE 8 Compatible Implementation

    Malvern, UK, and Ottawa, 9th of October 2019. Payara Services and the Eclipse Foundation, Inc. today announced their application server, Payara Server, has passed the nearly 50,000 open sourced licensed Jakarta EE 8 Technology Compatibility Kits (TCKs) for the Full Platform and is now a Jakarta EE 8 compatible implementation. Payara Server 5.193.1 is available for download here.

    “The Payara team is extremely proud to be among the first few companies to achieve Jakarta EE 8 Full Platform Compatibility, starting with Payara Platform 5.193.1,” says Steve Millidge, founder of Payara Services. “This is a significant milestone for Payara and the team has done a huge amount of work to get this done. I think this is a great adoption story for Jakarta EE in general as Payara Server is not a Java EE 8 implementation and this shows that Jakarta EE is an open standard and can bring in new organisations and implementations.”

    Jakarta EE is the open, vendor-neutral successor of Java EE, and the start of a new age for enterprise Java innovation including cloud-native technologies and microservices. Moving Java EE to a community-driven open source model enables faster evolution, more frequent releases, and the development of modern applications. Payara Server was unable to achieve Java EE certification but not only has the application server become Jakarta EE compatible due to the community-driven process, but the Payara team have also participated in the process of moving Java EE to Jakarta EE as project management committee members, committers, and members of the working group.

    “Congratulations to Payara for being one of the first to deliver on the promise of Jakarta EE’s open specifications and branding process,” says Mike Milinkovich, executive director for the Eclipse Foundation. “It is important to note that Payara is a new vendor to this ecosystem, as they were never a Java EE licensee. It is great to see Jakarta EE’s open community processes bring in new organizations and implementations. We fully expect many more organizations to follow in Payara’s pioneering footsteps.”

    For more information about Payara Server and other Payara Platform solutions, including commercial support and consultancy services, explore Payara.fish or contact Payara at or

  • Participate in the 2019 IoT Commercial Adoption Survey!

    According to McKinsey, the Internet of Things (IoT) will have a total potential economic impact of up to $11.1 trillion a year by 2025.

    What are the leading industrial IoT use cases that will contribute to that impact? You tell us!

    The Eclipse IoT Working Group has launched the 2019 IoT Commercial Adoption Survey to help IoT ecosystem stakeholders get a better understanding of the IoT industry landscape and gain insights into the requirements, priorities, and challenges faced by organizations who are deploying and using commercial IoT solutions.

    Take just a few minutes to complete the survey. Survey responses will be collected until October 28, 2019 and the results will be published in early December.

    Thank you in advance for your participation!

  • WAS 8.5 Application Deployment Won’t Start (ADMA0116W) with MyEclipse 2018.12

     

    I upgraded MyEclipse from 2017 to 2018 a few months back and now nothing I do can make our EAR deployment start on WAS 8.5.11 (tried every WAS upgrade too)

    The web services EAR application is OK on WAS 7 but on WAS 8.5 I always get error ADMA0116W.
    (I’m using Classic/Packaged options but have tried everything!)
    Research I’ve done suggests it’s a java reflection class load problem of a different JAR version to what is expected.
    The stack trace isn’t useful to determine the class.

    The same application code works fine on the same WAS 8.5 server deploying from ME 2017.

    The EAR application is a set of web services built under JAX-WS & JAX-WS.
    It has a bit of Spring usage too but maybe not relevant.

    I’ve set up both 2017 & 2018 with the same Maven & JVM configurations
    Makes no difference what I try.
    Note that the Jenkins built final artefact deployed manually to WAS 8.5 does start properly.

    I want to move to Java 8 so will not have WAS 7 any more.
    Looks like I’m staying on 2017 unless this problem has been solved.

    Anyone have any ideas to try?

    ——

    Sorry that you are seeing this issue.

    Can you please give us some more details to help us investigate further?

    1. It is not clear what exactly you mean by the deployment does not start. Is the deployment itself failing or the deployed application does not run? Please clarify.
    2. Are you seeing this problem only recently? Did this project ever work fine in MyEclipse 2018 post updating from MyEclipse 2017?
    3. If you are seeing this problem only recently, then can you please let us know if there has been any changes to the MyEclipse IDE or the application or the WAS server (applied a fix patch,upgraded to latest version etc)
    4. Is the WAS 8.5 configured to run with the IBM JDK? You can verify the same by double clicking on the WAS server entry in the Servers view to open the Overview page and then click on ‘Runtime Environment’ link and verify the configured JDK.
    5. Please share with us the full stacktrace of the ADMA0116W error.

    Apologies for inconvenience caused.

    ——

    There haven’t been changes to MyEclipse 2018 in the WAS deployment area, so seeing it fail in 2018 when it works in 2017 is surprising.

    Just a couple of questions in addition to above:

    6) Research I’ve done suggests it’s a java reflection class load problem of a different JAR version to what is expected
    Can you share the name and version of the JAR involved?

    7) MyEclipse 2018 runs with Java 10, while 2017 runs with Java 8. Of course, this should not matter much as your server should be starting with an IBM JDK (as Swapna asked in #4 above) but, being a major difference between 2018 and 2017, you might want to try running MyEclipse 2018 with a Java 8 JDK instead (you can use the VM from the binary folder in your 2017 install) and see if that works. You need to change the -vm argument in your myeclipse.ini file to achieve this, please let us know if you need help.

    8) brute-force idea is to export an EAR from MyEclipse 2017 and from 2018 using the File > Export > Java EE > EAR option, and then extract both EARs. If you do a file system diff over the extracted contents, it may be easy to spot a key difference, which will help us figure out what is going wrong.

    Hope we’re able to get you deploying with 2018 in short order!

    ——

    Clarification as requested:
    1. The application deploys to WAS 8.5 successfully (classic/packaged options)
    2. The application always fails to start under MyEclipse 2018 (never worked for 2018 but 2017 does)
    3. MyEclipse 2018 deploys and starts the EAR OK on WAS 7
    4. Building the EAR artefact outside of ME 2018 always results in a successful deployment & start on WAS 8.5
    eg Manual installation of Jenkins build
    5. See the attached the start-up error dump. It isn’t helpful to determine the jar causing the error (frameworks are wonderful!)
    6. I tried running ME 2018 using the 2017 JVM but both javaw.exe and jvm.dll errored (but do run 2017)
    7. I started ME 2018 using the WAS 8.5 JVM, it started but then gave me a security integrity alert and quit

    ——

    Thank you for the details. The error in the log points to a problem with default servlet mapping.
    Caused by: com.ibm.ws.exception.RuntimeWarning: SRVE0303E: Servlet name for the servlet mapping /rest/* could not be found.

    Similar issue is discussed here : https://stackoverflow.com/questions/43760975/was-8-5-5-9-cannot-start-webapplication-because-of-srve0303e

    If you are still seeing the problem then please share with us the complete server log file, SystemOut.log which is located in your WAS server install directory :
    WebSphere 8.5profilesprofilenamelogsservernameSystemOut.log. You can change the extension on the file to .txt and attach it here to help us investigate further. Also please share with us your workspace log file which is located in your workspace dir/.metadata/.log.

    Regarding the error when starting MyEclipse 2018 using 2017 JVM, it could be a result of trying to point to 32 bit JVM on a 64 bit version of MyEclipse 2018. Please point to a 64 bit version of Java 8 and check.

    ——

    Success!
    I downloaded Java 1.8 u201 x64 and now ME 2018 starts OK using that as VM.
    No idea my the older x64 1.8 installation didn’t work.

    Application now deploys and starts on WAS 8.5 so the java 10 does something incompatible but not for WAS 7.
    The application code has 1.6 compliance set and uses the WAS 8.5 JVM in preferences.

    I pulled both good/bad exported EARs off the WAS 8.5 server’s profile and had a play comparing files but it’s tedious unpacking all the different bits. (most bespoke top level jars are different)
    Maven stuff seems to get rearranged so creates false differences, I haven’t delved too deeply as I ran out of time.

    I also attached the two suggested log files.

    Thanks for your suggestion on the JVM.

  • Debug jar from Windows-launched Java App

     

    I would like to debug a jar that runs in a Java application, but the application itself is launched by a Windows executable. I suspect the VM arguments are “hidden” behind the EXE and the faster route to debugging is to start the EXE from MyEclipse (or ME CI) rather than guess the main class and its arguments. My problem is I see no way to start the EXE from the Create, Manage and Run Configuration dialog. Is this task possible?

    ——

    With the Java tooling, no – there isn’t a way to launch an EXE, and beyond that, for a Java debugging connection to be set up.

    1) Finding the main class would probably be simpler – if it really is an app that’s launched via a main, and the launching exe isn’t doing something different. To find main, you could unzip the JAR(s) if not too many and examine MANIFEST.MF files, looking for the Main-Class property. Alternatively, you could add all the JARs to the build path of a dummy Java project, and then choose Debug As > Java Application – the dialog that pops up will list all the main classes it finds on the project’s classpath.

    2) Remote debugging is another option, but that would require you to change the arguments passed to the Java application to have it wait / listen for a debug connection. You can then start it with the EXE and “attach” to it from MyEclipse. I only mention this as an option if you can think of some way to modify the arguments.

    Hope this helps.

  • Using JUnit 5 with MyEclipse 2016

    Using JUnit 5 with MyEclipse 2016

    What is required to use JUnit 5 with MyEclipse 2016?

    ——

    JUnit 5 requires a Java 8 project. JUnit 4 is the latest which ships with MyEclipse 2016.
    You can download the JUnit 5 libraries, create a new user library (Window > Preferences > Java > Build Path > User Libraries), add the JUnit 5 jars to it and then add the user library to the project via Build Path page (switch to Libraries tab and click on ‘Add Library’ and select ‘User Library’).

    Our latest release MyEclipse 2018 ships with JUnit 5. MyEclipse 2018 is based on Eclipse Photon and supports Java 9 and 10. Please check the Delivery Log for the list of new features and improvements that come with MyEclipse 2018 : https://www.genuitec.com/products/myeclipse/deliverylog/ci/

    Please note that versions earlier than MyEclipse 2017 are no longer fully supported. We try and assist licensed users working with older versions, but no fixes will be made to those versions. I recommend you upgrade to MyEclipse 2018 to take advantages of the latest technologies it supports.

    You can download the MyEclipse 2018 installer from here : https://www.genuitec.com/products/myeclipse/download/
    Install it alongside your existing MyEclipse 2016 installation to a different folder and give it a try. The license you currently hold is valid for MyEclipse 2018 as well.

    Please let us know if you have any questions or if you see any issues migrating to MyEclipse 2018. We will be glad to assist you in making the transition.

  • MyEclipse upgrade

     

    Hi,

    We would like to ask what version of MyEclipse should we install if we will be using
    – IBM WAS 8.5.5.15 BASE
    – JDK 1.8?

    And we need this version to support CVS and build automation tools as well (eg. Jenkins)
    Please provide us the link to download the installer as well.

    We are currently using:
    – MyEclipse 10
    – IBM WAS 8.0
    – JDK 1.6

     

    ——

    I would normally recommend MyEclipse 2019.4, but we have some issues that are specific to WAS 8.5, the fixes will be released in the next MyEclipse update. Until then, you can use MyEclipse 2017, you can find the download links on our download page here: https://www.genuitec.com/products/myeclipse/download/

    To be clear on the update process, you should update to a MyEclipse 2019 build when the fix is released, but that will require a separate install of MyEclipse (you will not be able to update the 2017 installs). Once you are on the 2019 build, you will be able to update the Eclipse instance in place going forward (no separate installs required).

    Please let us know if you have any further questions.

  • Build 16.0.0-20190403 is incredibly slow

    Build 16.0.0-20190403 is incredibly slow

     

    How are people working with this product anymore. Debug is incredibly slow and overall it is slow. I mean seconds in debug at certain points. The box I have has 12GB win 10 – and I write now I am running sandbox type stuff.

    I read a month or so ago where people said that the new builds were slow – what is the goto build or download for best stable and fastest? It cannot be something from a 2017 version? How is that even offered on the site???