Hey, so I just finished my extension and want to export it. But I don't just want to run ant extensions
and export them all. Is there a way to export only a specific extension? Thanks for the help.
If you put the extensions in different packages, they are bundled per package. Alternatively, what we do is keep a separate branch for each extension so that they can all live in the same repo while allowing us to focus PRs toward a specific extension.
Thank you, but the problem is that I have multiple projects like com.xtendera.extension1
and com.xtendera.extension2
. I just want to export one of the packages for example the example one package. How do you do that?
You can't build just one subset of the sources. Extensions are built by compiling all of components/src and then partitioning the output into separate extensions based on package name. If com.xtendera.extension1
is one package and com.xtendera.extension2
is a second package, then ant extensions
will yield components/build/extensions/com.xtendera.extension1.aix
and components/build/extensions/com.xtendera.extension2.aix
.
If extension1
and extension2
are classes in com.xtendera
(which I wouldn't recommend), then you can pass -Dextensions.packagefqcn=true
to the ant extensions
command to build an extension per class. This is a legacy option that's there because extensions originally could only ever contain a single component and this is kept for backward compatibility. Ideally you should structure your extensions to make use of the newer format, which allows you to bundle related components into a single extension.
Okay. Sorry for the trouble.
It's no trouble for me. It makes me think that we should probably update the extensions document to include some best practices.