Uploaded image for project: 'IGB'
  1. IGB
  2. IGBF-3312

Investigate com.sun tools artifact in Java 11

    Details

    • Type: Task
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None

      Description

      Situation: The core/taglets/pom.xml specifies a version for <artifactId>tools</artifactId>

              <dependency>
                  <groupId>com.sun</groupId>
                  <artifactId>tools</artifactId>
                  <version>1.8</version>
                  <scope>system</scope>
                  <systemPath>${toolsjar}</systemPath>
              </dependency>
      

      According to this article on stackoverflow, tools may no longer be available in Java 11.

      Task: Investigate if tools is no longer available in Java 11. If a fix is possible, update this ticket.

        Attachments

          Issue Links

            Activity

            nfreese Nowlan Freese created issue -
            nfreese Nowlan Freese made changes -
            Field Original Value New Value
            Epic Link IGBF-3142 [ 21688 ]
            nfreese Nowlan Freese made changes -
            Link This issue relates to IGBF-3301 [ IGBF-3301 ]
            Hide
            nfreese Nowlan Freese added a comment - - edited

            /Library/Java/JavaVirtualMachines/jdk1.8.0_291.jdk/Contents/Home/lib

            ant-javafx.jar	ct.sym		dt.jar		ir.idl		javafx-mx.jar	jconsole.jar	orb.idl		packager.jar	sa-jdi.jar	tools.jar	visualvm
            

            /Library/Java/JavaVirtualMachines/zulu8.62.0.19-ca-fx-jdk8.0.332-macosx_x64/zulu-8.jdk/Contents/Home/lib

            ant-javafx.jar	ct.sym		dt.jar		ir.idl		javafx-mx.jar	jconsole.jar	orb.idl		packager.jar	sa-jdi.jar	tools.jar
            

            /Library/Java/JavaVirtualMachines/zulu11.60.19-ca-fx-jdk11.0.17-macosx_x64/zulu-11.jdk/Contents/Home/lib

            classlist			libdecora_sse.dylib		libjava.dylib			libmanagement_agent.dylib	librmi.dylib
            ct.sym				libdt_socket.dylib		libjavafx_font.dylib		libmanagement_ext.dylib		libsaproc.dylib
            fontconfig.bfc			libextnet.dylib			libjavafx_iio.dylib		libmlib_image.dylib		libsplashscreen.dylib
            fontconfig.properties.src	libfontmanager.dylib		libjavajpeg.dylib		libnet.dylib			libsunec.dylib
            javafx-swt.jar			libfreetype.dylib		libjawt.dylib			libnio.dylib			libunpack.dylib
            javafx.properties		libfxplugins.dylib		libjdwp.dylib			libosx.dylib			libverify.dylib
            jfr				libglass.dylib			libjfxmedia.dylib		libosxapp.dylib			libzip.dylib
            jli				libglib-lite.dylib		libjfxmedia_avf.dylib		libosxkrb5.dylib		modules
            jrt-fs.jar			libgstreamer-lite.dylib		libjfxwebkit.dylib		libosxsecurity.dylib		psfont.properties.ja
            jspawnhelper			libinstrument.dylib		libjimage.dylib			libosxui.dylib			psfontj2d.properties
            jvm.cfg				libj2gss.dylib			libjsig.dylib			libprefs.dylib			security
            libattach.dylib			libj2pcsc.dylib			libjsound.dylib			libprism_common.dylib		server
            libawt.dylib			libj2pkcs11.dylib		liblcms.dylib			libprism_es2.dylib		src.zip
            libawt_lwawt.dylib		libjaas.dylib			libmanagement.dylib		libprism_sw.dylib		tzdb.dat
            
            Show
            nfreese Nowlan Freese added a comment - - edited /Library/Java/JavaVirtualMachines/jdk1.8.0_291.jdk/Contents/Home/lib ant-javafx.jar ct.sym dt.jar ir.idl javafx-mx.jar jconsole.jar orb.idl packager.jar sa-jdi.jar tools.jar visualvm /Library/Java/JavaVirtualMachines/zulu8.62.0.19-ca-fx-jdk8.0.332-macosx_x64/zulu-8.jdk/Contents/Home/lib ant-javafx.jar ct.sym dt.jar ir.idl javafx-mx.jar jconsole.jar orb.idl packager.jar sa-jdi.jar tools.jar /Library/Java/JavaVirtualMachines/zulu11.60.19-ca-fx-jdk11.0.17-macosx_x64/zulu-11.jdk/Contents/Home/lib classlist libdecora_sse.dylib libjava.dylib libmanagement_agent.dylib librmi.dylib ct.sym libdt_socket.dylib libjavafx_font.dylib libmanagement_ext.dylib libsaproc.dylib fontconfig.bfc libextnet.dylib libjavafx_iio.dylib libmlib_image.dylib libsplashscreen.dylib fontconfig.properties.src libfontmanager.dylib libjavajpeg.dylib libnet.dylib libsunec.dylib javafx-swt.jar libfreetype.dylib libjawt.dylib libnio.dylib libunpack.dylib javafx.properties libfxplugins.dylib libjdwp.dylib libosx.dylib libverify.dylib jfr libglass.dylib libjfxmedia.dylib libosxapp.dylib libzip.dylib jli libglib-lite.dylib libjfxmedia_avf.dylib libosxkrb5.dylib modules jrt-fs.jar libgstreamer-lite.dylib libjfxwebkit.dylib libosxsecurity.dylib psfont.properties.ja jspawnhelper libinstrument.dylib libjimage.dylib libosxui.dylib psfontj2d.properties jvm.cfg libj2gss.dylib libjsig.dylib libprefs.dylib security libattach.dylib libj2pcsc.dylib libjsound.dylib libprism_common.dylib server libawt.dylib libj2pkcs11.dylib liblcms.dylib libprism_es2.dylib src.zip libawt_lwawt.dylib libjaas.dylib libmanagement.dylib libprism_sw.dylib tzdb.dat
            nfreese Nowlan Freese made changes -
            Assignee Nowlan Freese [ nfreese ]
            nfreese Nowlan Freese made changes -
            Status To-Do [ 10305 ] In Progress [ 3 ]
            Show
            nfreese Nowlan Freese added a comment - Blog on fixing sun.* imports: https://winterbe.com/posts/2018/08/29/migrate-maven-projects-to-java-11-jigsaw/
            Hide
            nfreese Nowlan Freese added a comment -

            Removal of javadoc doclet API: https://bugs.openjdk.org/browse/JDK-8215587

            Show
            nfreese Nowlan Freese added a comment - Removal of javadoc doclet API: https://bugs.openjdk.org/browse/JDK-8215587
            nfreese Nowlan Freese made changes -
            Story Points 1 2
            Show
            nfreese Nowlan Freese added a comment - - edited This is where the IGB code came from in Cytoscape: https://www.javatips.net/api/cytoscape-api-master/taglets/src/main/java/org/cytoscape/taglets/compatibility/InModuleTaglet.java This is the newer refactored code from cytoscape: https://github.com/cytoscape/cytoscape-api/blob/d2446a8e5ef6991ed38f7c0699c41b29b5505b48/taglets/src/main/java/org/cytoscape/taglets/compatibility/InModuleTaglet.java Cytoscape refactoring taglets commit: https://github.com/cytoscape/cytoscape-api/commit/d2446a8e5ef6991ed38f7c0699c41b29b5505b48 Documentation on jkd.javadoc.doclet: https://docs.oracle.com/en/java/javase/11/docs/api/jdk.javadoc/jdk/javadoc/doclet/package-summary.html
            Hide
            nfreese Nowlan Freese added a comment -

            Commit: https://bitbucket.org/nfreese/nowlanfork-igb/commits/0da7d0a013c3f821ded6da40a3a05c83e672182b

            I used the refactored Cytoscape code base to update ModuleInfoTaglet.java. I'm not entirely sure what this class is needed for, as it is only used in the parent pom.xml, but I think it has to do with IGB apps. The original code for ModuleInfoTaglet.java appears to come straight from cytoscape, so I used their refactored code. I have pushed the changes to the IGBF-3275 branch.

            The Netbeans IDE is no longer complaining about the taglets package, however, I am unclear how to test my changes as IGB is not yet running with JDK 11.

            To test:
            Pull the latest changes to the IGBF-3275 branch.
            Clean and build IGB (mvn clean install).
            IGB should build successfully, but the jar will not run.

            Show
            nfreese Nowlan Freese added a comment - Commit: https://bitbucket.org/nfreese/nowlanfork-igb/commits/0da7d0a013c3f821ded6da40a3a05c83e672182b I used the refactored Cytoscape code base to update ModuleInfoTaglet.java. I'm not entirely sure what this class is needed for, as it is only used in the parent pom.xml, but I think it has to do with IGB apps. The original code for ModuleInfoTaglet.java appears to come straight from cytoscape, so I used their refactored code. I have pushed the changes to the IGBF-3275 branch. The Netbeans IDE is no longer complaining about the taglets package, however, I am unclear how to test my changes as IGB is not yet running with JDK 11. To test: Pull the latest changes to the IGBF-3275 branch. Clean and build IGB (mvn clean install). IGB should build successfully, but the jar will not run.
            nfreese Nowlan Freese made changes -
            Status In Progress [ 3 ] Needs 1st Level Review [ 10005 ]
            nfreese Nowlan Freese made changes -
            Assignee Nowlan Freese [ nfreese ]
            Hide
            ann.loraine Ann Loraine added a comment - - edited

            Discussion during scrum:

            Try:

            • Migrate new cytoscape code over to the master branch.
            • Attempt to build and run the code.
            • If it works, rebase the JDK 11 branch on master.
            Show
            ann.loraine Ann Loraine added a comment - - edited Discussion during scrum: Try: Migrate new cytoscape code over to the master branch. Attempt to build and run the code. If it works, rebase the JDK 11 branch on master.
            nfreese Nowlan Freese made changes -
            Status Needs 1st Level Review [ 10005 ] First Level Review in Progress [ 10301 ]
            nfreese Nowlan Freese made changes -
            Status First Level Review in Progress [ 10301 ] To-Do [ 10305 ]
            nfreese Nowlan Freese made changes -
            Status To-Do [ 10305 ] In Progress [ 3 ]
            nfreese Nowlan Freese made changes -
            Assignee Nowlan Freese [ nfreese ]
            Hide
            nfreese Nowlan Freese added a comment - - edited

            Code has been migrated to master branch.
            IGB builds and runs, however, I am unsure of what the taglets are doing, so I am not sure if the new changes are working correctly. The taglets are included in the parent pom as part of the maven-javadoc-plugin. The code for ModuleInfoTaglet.java was added in this commit with the comment "added javadoc for context-menu-api".

            I think the code was included as part of a tutorial(?) for the context menu api: https://wiki.bioviz.org/confluence/display/igbdevelopers/Context+Menu+API+QuickStart

            There is a Jira ticket (https://jira.bioviz.org/browse/IGBF-1089) that mentions the context menu api and is dated around the same time that David made the above commit.

            Show
            nfreese Nowlan Freese added a comment - - edited Code has been migrated to master branch. IGB builds and runs, however, I am unsure of what the taglets are doing, so I am not sure if the new changes are working correctly. The taglets are included in the parent pom as part of the maven-javadoc-plugin. The code for ModuleInfoTaglet.java was added in this commit with the comment "added javadoc for context-menu-api". I think the code was included as part of a tutorial(?) for the context menu api: https://wiki.bioviz.org/confluence/display/igbdevelopers/Context+Menu+API+QuickStart There is a Jira ticket ( https://jira.bioviz.org/browse/IGBF-1089 ) that mentions the context menu api and is dated around the same time that David made the above commit.
            Hide
            ann.loraine Ann Loraine added a comment -

            Suggestion: Search Jira for "javadoc" and see what comes up.

            Show
            ann.loraine Ann Loraine added a comment - Suggestion: Search Jira for "javadoc" and see what comes up.
            Hide
            nfreese Nowlan Freese added a comment -

            This commit may be relevant, but there is no information in the commit other than a link to the IGB developer's guide. Searching the developer's guide for javadoc returns no results.

            Show
            nfreese Nowlan Freese added a comment - This commit may be relevant, but there is no information in the commit other than a link to the IGB developer's guide. Searching the developer's guide for javadoc returns no results.
            Hide
            nfreese Nowlan Freese added a comment - - edited

            I am able to install apps via the IGB App Store as well as the IGB App Manager (tested ProtAnnot and Super Simple IGB App). I think that the context-menu-api quickstart app may demonstrate/use the taglets based on David's commit, but I cannot get it to run as there are a number of errors.

            Show
            nfreese Nowlan Freese added a comment - - edited I am able to install apps via the IGB App Store as well as the IGB App Manager (tested ProtAnnot and Super Simple IGB App). I think that the context-menu-api quickstart app may demonstrate/use the taglets based on David's commit, but I cannot get it to run as there are a number of errors.
            nfreese Nowlan Freese made changes -
            Comment [ There are a number of issues with the tutorial for the [context menu api|https://wiki.bioviz.org/confluence/display/igbdevelopers/Context+Menu+API+QuickStart] that are keeping it from running. ]
            Show
            nfreese Nowlan Freese added a comment - - edited My commit to my Java 8 branch: https://bitbucket.org/nfreese/nowlanfork-igb/commits/14582a8a688838129e42c5131b62b2674b1f9869
            nfreese Nowlan Freese made changes -
            Assignee Nowlan Freese [ nfreese ]
            nfreese Nowlan Freese made changes -
            Status In Progress [ 3 ] To-Do [ 10305 ]
            Hide
            nfreese Nowlan Freese added a comment -

            Since the changes do not appear to break IGB (on Java 8) but we are unclear of what the changes are doing, I have pushed the changes to the IGBF-3275 branch (Java 11) but we will not push them to master.

            Closing ticket.

            Show
            nfreese Nowlan Freese added a comment - Since the changes do not appear to break IGB (on Java 8) but we are unclear of what the changes are doing, I have pushed the changes to the IGBF-3275 branch (Java 11) but we will not push them to master. Closing ticket.
            nfreese Nowlan Freese made changes -
            Assignee Nowlan Freese [ nfreese ]
            nfreese Nowlan Freese made changes -
            Status To-Do [ 10305 ] In Progress [ 3 ]
            nfreese Nowlan Freese made changes -
            Status In Progress [ 3 ] Needs 1st Level Review [ 10005 ]
            nfreese Nowlan Freese made changes -
            Status Needs 1st Level Review [ 10005 ] First Level Review in Progress [ 10301 ]
            nfreese Nowlan Freese made changes -
            Status First Level Review in Progress [ 10301 ] Ready for Pull Request [ 10304 ]
            nfreese Nowlan Freese made changes -
            Status Ready for Pull Request [ 10304 ] Pull Request Submitted [ 10101 ]
            nfreese Nowlan Freese made changes -
            Status Pull Request Submitted [ 10101 ] Reviewing Pull Request [ 10303 ]
            nfreese Nowlan Freese made changes -
            Status Reviewing Pull Request [ 10303 ] Merged Needs Testing [ 10002 ]
            nfreese Nowlan Freese made changes -
            Status Merged Needs Testing [ 10002 ] Post-merge Testing In Progress [ 10003 ]
            nfreese Nowlan Freese made changes -
            Resolution Done [ 10000 ]
            Status Post-merge Testing In Progress [ 10003 ] Closed [ 6 ]

              People

              • Assignee:
                nfreese Nowlan Freese
                Reporter:
                nfreese Nowlan Freese
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: