亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

WSO2 和創建可部署存檔從 Maven 獲取舊屬性

WSO2 和創建可部署存檔從 Maven 獲取舊屬性

嗶嗶one 2021-06-04 08:19:41
我對 WSO2 ESB 有另一個問題。我創建了一些 Maven 項目。該項目包含在 WSO2 的 Java 庫項目中。在庫項目中,我在 pom.xml 中設置了 maven-bundle-plugin。它通過 Maven 構建正確創建了 MANIFEST,但將項目導出為可部署存檔創建了帶有舊屬性的 MANIFEST.md(我認為,在通過 Eclipse 創建新項目后,帶有屬性的 MANIFEST(未更改的 SymbolicName,沒有導入)。Maven 項目,帶有用于捆綁 POM.xml 的類<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">  <modelVersion>4.0.0</modelVersion>  <groupId>com.coig.esb.osgi</groupId>  <artifactId>emf</artifactId>  <version>1.0.0</version>  <packaging>jar</packaging>  <name>emf</name>  <url>http://maven.apache.org</url>  <properties>    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>  </properties>  <dependencies>    <dependency>      <groupId>junit</groupId>      <artifactId>junit</artifactId>      <version>3.8.1</version>      <scope>test</scope>    </dependency>    <!-- https://mvnrepository.com/artifact/javax.persistence/javax.persistence-api -->  <dependency>      <groupId>javax.persistence</groupId>      <artifactId>javax.persistence-api</artifactId>      <version>2.2</version>  </dependency>  </dependencies></project>然后將上面項目中的 jar 文件從 WSO2 導入到 Java 庫項目中。Java 庫項目 POM.xml<?xml version="1.0" encoding="UTF-8"?><project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">  <modelVersion>4.0.0</modelVersion>  <groupId>com.coig.esb.osgi.emf.EMFService</groupId>  <artifactId>EMFService</artifactId>  <version>1.0.0</version>  <packaging>bundle</packaging>  <name>EMFService</name>  <description>EMFService</description>  <properties>    <CApp.type>lib/library/bundle</CApp.type>當我創建了 Mediator 項目時,設置 maven-bunlde-plugin 來導入我之前提到的模塊,也有同樣的情況。Maven 構建會創建正確的 MANIFEST.md,但將項目導出為可部署存檔會創建 MANIFEST.md,但屬性未更改。你能不能給我一些評論,它應該如何設置?
查看完整描述

1 回答

?
慕標琳琳

TA貢獻1830條經驗 獲得超9個贊

看起來“將項目導出為可部署存檔”不支持 MANIFEST.MF 中的 Import-Package 標頭。此文件由MediatorExportHandler類構建,該類忽略此標頭。


IJavaProject javaProject = JavaCore.create(project);


List<String> exportPac =getExportPackages(javaProject);

BundleManifest manifest = new BundleManifest();    

manifest.setBundleName(project.getName());

manifest.setBundleSymbolicName(project.getName());

manifest.setBundleDescription(project.getName());

manifest.setBundleVersion("2.0");

manifest.setExportPackagesList(exportPac);

[...]

File manifestFile=new File(metainfPath,"MANIFEST.MF");

FileUtils.createFile(manifestFile, manifest.toString());    


查看完整回答
反對 回復 2021-06-10
  • 1 回答
  • 0 關注
  • 183 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號