[R-pkg-devel] Proper CRAN way - How to handle dependency of java jar file?

Rainer M Krug R@|ner @end|ng |rom krug@@de
Tue Jun 23 14:18:14 CEST 2020


Hi

I have a package called `plantuml` (https://github.com/rkrug/plantuml) which converts plantuml code to UML graphs. It uses for this the java program https://plantuml.com which is Open Source. 

As it is not allowed to distribute a binary with an R package, I use the approach of a function which downloads the jar file into the directory `system.file("jar/plantuml.jar", package = "plantuml”)`. 

This works nicely, and at the moment, the function is called automatically before the plantuml.jar is used.

Now I would like to submit the package to CRAN. I can’t find the guidelines anymore, so I am asking here: 

What is the appropriate way of handling this?

I can think of a at least two ways of making it obvious to the user, that a binary is downloaded:

1) if the file plantuml.jar is not present, ask the user to run the function `updatePlantumlJar()` which downloads the jar to the original location in the package directory

2) tell the user to download the file manually and to put it somewhere, where the package will find it

I would prefer the first version, as the plantuml.jar would be in the package directory, where usually nobody but the package is doing stuff.

Any suggestions on how I could make this “CRAN conform”?

Thanks a lot,

Rainer

--
Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany)

Orcid ID: 0000-0002-7490-0066

Department of Evolutionary Biology and Environmental Studies
University of Zürich
Office Y34-J-74
Winterthurerstrasse 190
8075 Zürich
Switzerland

Office:	+41 (0)44 635 47 64
Cell:       	+41 (0)78 630 66 57
email:      Rainer.Krug using uzh.ch
		Rainer using krugs.de
Skype:     RMkrug

PGP: 0x0F52F982





--
Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany)

Orcid ID: 0000-0002-7490-0066

Department of Evolutionary Biology and Environmental Studies
University of Zürich
Office Y34-J-74
Winterthurerstrasse 190
8075 Zürich
Switzerland

Office:	+41 (0)44 635 47 64
Cell:       	+41 (0)78 630 66 57
email:      Rainer.Krug using uzh.ch
		Rainer using krugs.de
Skype:     RMkrug

PGP: 0x0F52F982



More information about the R-package-devel mailing list