Is there any native support for using external packages within an Isabelle/Scala component (e.g. py4j
). At present, I am using Gradle to download it and place it in a folder that I then add to my Isabelle classpath in the component settings.
My understanding is that Gradle is used in Isabelle/Scala components just to import the project into common IDEs and get static analysis. Is there any way to specify external dependencies within the component settings itself? This way Gradle does not need to be used for setting up the component but rather only if someone wants to further develop the component.
Yes, there is a standard mechanism for external components (not just jars), e.g. have a look at the Component_XZ
module.
Where is this Component_XZ
module?
~~/src/Pure/Admin
I believe
Ah, I see that specific component is only in Isabelle2025. So, if I understand correctly, the standard mechanism is to create an Isabelle/Scala module to manage the download of the required package and then add that to the sources
in the build.props
for your component so it can be used by other parts of your component.
Pretty much
Last updated: May 18 2025 at 04:27 UTC