Dear Bioconductor Developers, My package `rmelting` is failing to build on release (3.15) and devel (3.16) versions for the following systems. Bioconductor 3.15 - palomino3 (Windows Server 2022 Datacenter / x64) Bioconductor 3.15 - palomino4 (Windows Server 2022 Datacenter / x64) - lconway (macOS 12.5.1 Monterey / x86_64) The error message is as follows. ``` * creating vignettes ... ERROR --- re-building 'Tutorial.Rmd' using rmarkdown_notangle . . . . . Quitting from lines 195-197 (Tutorial.Rmd) Error: processing vignette 'Tutorial.Rmd' failed with diagnostics: java.lang.IllegalAccessException: class RJavaTools cannot access a member of class java.util.HashMap$KeySet (in module java.base) with modifiers "public final" --- failed re-building 'Tutorial.Rmd' SUMMARY: processing the following file failed: 'Tutorial.Rmd' ``` I am unable to replicate the same on my end. It seems to be an issue with java. The package is a low level interface to a software written in Java 1.5 using `rJava`. I have tried with different java versions upto 1.8. Any pointers or suggestions to fix the same will be appreciated. Best Regards, J. Aravind Scientist ICAR-National Bureau of Plant Genetic Resources New Delhi, India ?SAVE TREE - Please do not print this e-mail unless necessary.? Disclaimer: The information contained in this electronic message and /or attachments to this message are intended for the exclusive use of the addressee(s) and may contain confidential, proprietary or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately destroy all copies of this message and any attachments. WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The organization accepts no liability for any damage caused by any virus transmitted by this email. www.icar.org.in
[Bioc-devel] Issue with a package dependent on rJava
3 messages · DR J Aravind, Anestis Gkanogiannis, Hervé Pagès
Hello, On line 1289 of melting.R you call the keyset() method of opts_melt (which is a HashMap). This method in Java until 11, return a private AbstractSet (KeySet). On line 1290 of melting.R you call iterator() method of the KeySet object you got on the previous line. Problem is that this KeySet is private and this call through reflexion isn?t valid, hence the exception. They changed this in java 11 where the returned AbstractSet is public. So solution is either use java >11 or change your code in melting.R to not call the iterator() method of keyset (which is a private AbstractSet). Best regards, Anestis Gkanogiannis, PhD ---------- https://linkedin.com/in/anestis-gkanogiannis https://github.com/gkanogiannis https://www.gkanogiannis.com -----Original Message----- From: Bioc-devel <bioc-devel-bounces at r-project.org> On Behalf Of DR J Aravind via Bioc-devel Sent: 10 October 2022 00:33 To: bioc-devel at r-project.org Cc: Aravind J (aravindj86 at yahoo.com) <aravindj86 at yahoo.com> Subject: [Bioc-devel] Issue with a package dependent on rJava Dear Bioconductor Developers, My package `rmelting` is failing to build on release (3.15) and devel (3.16) versions for the following systems. Bioconductor 3.15 - palomino3 (Windows Server 2022 Datacenter / x64) Bioconductor 3.15 - palomino4 (Windows Server 2022 Datacenter / x64) - lconway (macOS 12.5.1 Monterey / x86_64) The error message is as follows. ``` * creating vignettes ... ERROR --- re-building 'Tutorial.Rmd' using rmarkdown_notangle . . . . . Quitting from lines 195-197 (Tutorial.Rmd) Error: processing vignette 'Tutorial.Rmd' failed with diagnostics: java.lang.IllegalAccessException: class RJavaTools cannot access a member of class java.util.HashMap$KeySet (in module java.base) with modifiers "public final" --- failed re-building 'Tutorial.Rmd' SUMMARY: processing the following file failed: 'Tutorial.Rmd' ``` I am unable to replicate the same on my end. It seems to be an issue with java. The package is a low level interface to a software written in Java 1.5 using `rJava`. I have tried with different java versions upto 1.8. Any pointers or suggestions to fix the same will be appreciated. Best Regards, J. Aravind Scientist ICAR-National Bureau of Plant Genetic Resources New Delhi, India ?SAVE TREE - Please do not print this e-mail unless necessary.? Disclaimer: The information contained in this electronic message and /or attachments to this message are intended for the exclusive use of the addressee(s) and may contain confidential, proprietary or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately destroy all copies of this message and any attachments. WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The organization accepts no liability for any damage caused by any virus transmitted by this email. www.icar.org.in _______________________________________________ Bioc-devel at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel
Thanks Anestis for your analysis and detailed feedback. @J. Aravind: I hope this is helpful. You should be able to reproduce the problem with a recent version of Java. Generally speaking you want to make sure that your package is compatible with reasonably recent versions of Java. FWIW here are the versions of Java installed on the Bioconductor build machines: -- Devel builds -- ? nebbiolo2: ? ? biocbuild at nebbiolo2:~$ java --version ? ? openjdk 11.0.16 2022-07-19 ? ? OpenJDK Runtime Environment (build 11.0.16+8-post-Ubuntu-0ubuntu120.04) ? ? OpenJDK 64-Bit Server VM (build 11.0.16+8-post-Ubuntu-0ubuntu120.04, mixed mode, sharing) ? palomino4: ??? PS C:\Users\hpages> java --version ??? java 17.0.1 2021-10-19 LTS ??? Java(TM) SE Runtime Environment (build 17.0.1+12-LTS-39) ??? Java HotSpot(TM) 64-Bit Server VM (build 17.0.1+12-LTS-39, mixed mode, sharing) ? lconway: ? ? lconway:~ biocbuild$ java --version ? ? openjdk 18 2022-03-22 ? ? OpenJDK Runtime Environment (build 18+36-2087) ? ? OpenJDK 64-Bit Server VM (build 18+36-2087, mixed mode, sharing) -- Release builds -- ? nebbiolo1: ??? biocbuild at nebbiolo1:~$ java --version ??? openjdk 11.0.16 2022-07-19 ??? OpenJDK Runtime Environment (build 11.0.16+8-post-Ubuntu-0ubuntu120.04) ??? OpenJDK 64-Bit Server VM (build 11.0.16+8-post-Ubuntu-0ubuntu120.04, mixed mode, sharing) ? palomino3: ??? PS C:\Users\hpages> java --version ??? java 17.0.1 2021-10-19 LTS ??? Java(TM) SE Runtime Environment (build 17.0.1+12-LTS-39) ??? Java HotSpot(TM) 64-Bit Server VM (build 17.0.1+12-LTS-39, mixed mode, sharing) ? merida1 ??? merida1:~ biocbuild$ java --version ??? openjdk 14.0.1 2020-04-14 ??? OpenJDK Runtime Environment (build 14.0.1+7) ??? OpenJDK 64-Bit Server VM (build 14.0.1+7, mixed mode, sharing) Cheers, H.
On 09/10/2022 17:02, Anestis Gkanogiannis via Bioc-devel wrote:
Hello, On line 1289 of melting.R you call the keyset() method of opts_melt (which is a HashMap). This method in Java until 11, return a private AbstractSet (KeySet). On line 1290 of melting.R you call iterator() method of the KeySet object you got on the previous line. Problem is that this KeySet is private and this call through reflexion isn?t valid, hence the exception. They changed this in java 11 where the returned AbstractSet is public. So solution is either use java >11 or change your code in melting.R to not call the iterator() method of keyset (which is a private AbstractSet). Best regards, Anestis Gkanogiannis, PhD ---------- https://linkedin.com/in/anestis-gkanogiannis https://github.com/gkanogiannis https://www.gkanogiannis.com -----Original Message----- From: Bioc-devel <bioc-devel-bounces at r-project.org> On Behalf Of DR J Aravind via Bioc-devel Sent: 10 October 2022 00:33 To: bioc-devel at r-project.org Cc: Aravind J (aravindj86 at yahoo.com) <aravindj86 at yahoo.com> Subject: [Bioc-devel] Issue with a package dependent on rJava Dear Bioconductor Developers, My package `rmelting` is failing to build on release (3.15) and devel (3.16) versions for the following systems. Bioconductor 3.15 - palomino3 (Windows Server 2022 Datacenter / x64) Bioconductor 3.15 - palomino4 (Windows Server 2022 Datacenter / x64) - lconway (macOS 12.5.1 Monterey / x86_64) The error message is as follows. ``` * creating vignettes ... ERROR --- re-building 'Tutorial.Rmd' using rmarkdown_notangle . . . . . Quitting from lines 195-197 (Tutorial.Rmd) Error: processing vignette 'Tutorial.Rmd' failed with diagnostics: java.lang.IllegalAccessException: class RJavaTools cannot access a member of class java.util.HashMap$KeySet (in module java.base) with modifiers "public final" --- failed re-building 'Tutorial.Rmd' SUMMARY: processing the following file failed: 'Tutorial.Rmd' ``` I am unable to replicate the same on my end. It seems to be an issue with java. The package is a low level interface to a software written in Java 1.5 using `rJava`. I have tried with different java versions upto 1.8. Any pointers or suggestions to fix the same will be appreciated. Best Regards, J. Aravind Scientist ICAR-National Bureau of Plant Genetic Resources New Delhi, India ?SAVE TREE - Please do not print this e-mail unless necessary.? Disclaimer: The information contained in this electronic message and /or attachments to this message are intended for the exclusive use of the addressee(s) and may contain confidential, proprietary or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately destroy all copies of this message and any attachments. WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The organization accepts no liability for any damage caused by any virus transmitted by this email. www.icar.org.in [[alternative HTML version deleted]]
_______________________________________________ Bioc-devel at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel _______________________________________________ Bioc-devel at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel
Herv? Pag?s Bioconductor Core Team hpages.on.github at gmail.com