Hi,

I'm not a fan of having distribution binary files in the source code repository or in any other repository that has to be at a specific place in the directory tree.

We currently have all snapshot plugin jars including source/javadoc on the nexus server:

https://josm.openstreetmap.de/nexus/content/groups/public/org/openstreetmap/josm/plugins/

You can pull them from there if you need them for anything.

For local development, you could just check out and add the source directory of the plugin to your favorite IDE, you don't need a jar file for this.

For CI, the way I would do it is to simply build the artifacts inside ${plugin.build.dir} and add a target to publish them to a maven server. I would set the default publish URL to something like "$buildDir/maven" and make a parameter to overwrite it for the CI server. That way, we can easily test it locally without having to worry about directory layouts and the build server can still collect them somewhere centralized.

Michael




On 30.05.2018 20:07, Holger Mappt wrote:
On 2018-05-30 at 11:57 +0200 Dirk Stöcker wrote:
On Wed, 30 May 2018, Holger Mappt wrote:

I don't see how that can be done without conflicts. If the sources and javadoc JARs are generated but not svn added and svn committed then those JARs are SVN private files. Everyone who runs the according target will have those private files in her/his working copy dist directory. If someone svn adds and svn commits the JARs then the next svn update will show merge conflicts because the JARs are now in the repository and the working copy as private files and SVN doesn't know what to do.

A clean solution is to either add the sources and javadoc JARs to all targets and to create+commit them for all plugins in dist, or not to do that. The sources and javadoc JARs that were added in r34045 were deleted in the next revision, so my assumption is that we don't want those JARs in dist.

So what's the plan with sources and javadoc JARs?

Vincent wants these files to build, but they should not to be released.

Add an svn:ignore in build directory?

Ciao

Hi,

Build the files to do what with them? Would a nodist directory parallel to dist be an option if the JARs are not to be uploaded to the repository?

The conflict will occur if the JARs are released later on. An svn:ignore will not help in that case. It is better to have separate directories for released and not released files.

Regards,
Holger




Reply via email to