String classifier = null;
if( classified ) {
classifier = platform;
String packageName = project.getArtifactId() + "-" + project.getVersion() + "-" + platform;
JarArchiver archiver = (JarArchiver) archiverManager.getArchiver("jar");
File packageFile = new File(new File(project.getBuild().getDirectory()), packageName + ".jar");
archiver.setDestFile(packageFile);
archiver.setIncludeEmptyDirs(true);
archiver.addDirectory(libDirectory);
Manifest manifest = new Manifest();
manifest.addConfiguredAttribute(new Attribute("Bundle-SymbolicName", project.getArtifactId() + "-" + platform));
manifest.addConfiguredAttribute(new Attribute("Bundle-Name", name + " for " + platform));
manifest.addConfiguredAttribute(new Attribute("Bundle-NativeCode", getNativeCodeValue(library)));
manifest.addConfiguredAttribute(new Attribute("Bundle-Version", project.getVersion()));
manifest.addConfiguredAttribute(new Attribute("Bundle-ManifestVersion", "2"));
manifest.addConfiguredAttribute(new Attribute("Bundle-Description", project.getDescription()));
archiver.addConfiguredManifest(manifest);
archiver.createArchive();
projectHelper.attachArtifact(project, "jar", classifier, packageFile);
} else {
projectHelper.addResource(project, libDirectory.getCanonicalPath(), null, null);