I'm trying to use maven poms to describe the dependencies of a cross-platform java application. I'm calling it cross platform because some of the dependencies use jni. I then want to build an assembly of this application that puts the platform specific dependencies in different directories of the assembly. For example directories: linux, osx, windows.
I have no problem writing a plugin to do this, but I can't see how to do it. The maven2 approach for dealing with platform specific dependencies is to use profiles which have os specific activations. But this platform information about the dependency does not appear easy to access during the assembly. First, to build a complete assembly I need trick maven into thinking the currently platform is actually every platform. I can't see how to do this without using a naming convention for the profile ids. If all windows profiles have the same id, then the assembly could be done by activating all the platform specific profiles. But that is not an ideal solution, if I want to reference external cross platform libraries whose poms I don't have control over. If I can get past that first part then to separate the dependencies into folders, I need to figure out which profile each dependency came from. That doesn't seem easy. The only way I can see to do is to traverse the transitive and inherited pom tree and track down the pom for each dependency, and figure out the profile that referenced it. Is there another way to do this? I could use a classifier naming convention, but then I'd have the same problem when working with external cross platform libraries. I'm really looking for a general way to approach this, that can follow the best practices of maven, and also support the various maven jni solutions. Thanks in advance for any ideas, Scott Cytacki --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]