- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 maven-bundle-plugin 构建一个 war 文件作为一个包,我想在 Felix 中部署它。这是相同的 POM 文件。
<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>
<parent>
<groupId>net.java</groupId>
<artifactId>jvnet-parent</artifactId>
<version>1</version>
</parent>
<groupId>com.sun.jersey.samples.helloworld-osgi-webapp</groupId>
<artifactId>war-bundle</artifactId>
<version>1.11</version>
<name>Helloworld OSGi WebApp - Jersey Sample WAR</name>
<packaging>war</packaging>
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<!-- <scope>provided</scope> -->
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.core</artifactId>
<version>4.2.0</version>
<!-- <scope>provided</scope> -->
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.compendium</artifactId>
<version>4.2.0</version>
<!-- <scope>provided</scope> -->
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.codehaus.jettison</groupId>
<artifactId>jettison</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-core-asl</artifactId>
<version>1.5.5</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.5.5</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-jaxrs</artifactId>
<version>1.5.5</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-xc</artifactId>
<version>1.5.5</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.http.api</artifactId>
<version>2.0.4</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<inherited>true</inherited>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<executions>
<execution>
<id>bundle-manifest</id>
<phase>process-classes</phase>
<goals>
<goal>manifest</goal>
</goals>
</execution>
</executions>
<configuration>
<manifestLocation>${project.build.directory}/META-INF</manifestLocation>
<supportedProjectTypes>
<supportedProjectType>bundle</supportedProjectType>
<supportedProjectType>war</supportedProjectType>
</supportedProjectTypes>
<instructions>
<Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
<Import-Package>com.sun.jersey.api.core,com.sun.jersey.spi.container.servlet,*</Import-Package>
<Export-Package>com.sun.jersey.samples.helloworld</Export-Package>
<Webapp-Context>jersyweb</Webapp-Context>
<Web-ContextPath>jersyweb</Web-ContextPath>
<Bundle-Activator>com.sun.jersey.samples.helloworld.WebAppContextListener</Bundle-Activator>
<Bundle-ClassPath>WEB-INF/classes</Bundle-ClassPath>
<Embed-Dependency>*;scope=compile|runtime;inline=false</Embed-Dependency>
<Embed-Transitive>true</Embed-Transitive>
</instructions>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1-alpha-2</version>
<configuration>
<attachClasses>true</attachClasses>
<archive>
<manifestFile>${project.build.directory}/META-INF/MANIFEST.MF</manifestFile>
<manifestEntries>
<Bundle-ClassPath>WEB-INF/classes</Bundle-ClassPath>
</manifestEntries>
</archive>
</configuration>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>
org.apache.felix
</groupId>
<artifactId>
maven-bundle-plugin
</artifactId>
<versionRange>
[2.0.1,)
</versionRange>
<goals>
<goal>manifest</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>
org.jvnet.jaxb2.maven2
</groupId>
<artifactId>
maven-jaxb2-plugin
</artifactId>
<versionRange>
[0.8.1,)
</versionRange>
<goals>
<goal>generate</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
当我使用 maven install 构建它时,我可以在 war 包的 META-INF 文件夹中看到一个逻辑上正确的 MANIFEST.MF 文件。这是 MANIFEST.MF。
**Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Created-By: Apache Maven Bundle Plugin
Built-By: parag.ki
Build-Jdk: 1.6.0_18
Bundle-ClassPath: WEB-INF/classes,servlet-api-2.5.jar,org.osgi.core-4.
2.0.jar,org.osgi.compendium-4.2.0.jar,jersey-core-1.11.jar,jersey-ser
ver-1.11.jar,asm-3.1.jar,jettison-1.1.jar,stax-api-1.0.1.jar,jackson-
core-asl-1.5.5.jar,jackson-mapper-asl-1.5.5.jar,jackson-jaxrs-1.5.5.j
ar,jackson-xc-1.5.5.jar,org.apache.felix.http.api-2.0.4.jar
Bnd-LastModified: 1333436962460
Bundle-Activator: com.sun.jersey.samples.helloworld.WebAppContextListe
ner
Bundle-Description: Java.net - The Source for Java Technology Collabor
ation
Bundle-ManifestVersion: 2
Bundle-Name: Helloworld OSGi WebApp - Jersey Sample WAR
Bundle-SymbolicName: war-bundle
Bundle-Version: 1.11.0
Embed-Dependency: *;scope=compile|runtime;inline=false
Embed-Transitive: true
Embedded-Artifacts: servlet-api-2.5.jar;g="javax.servlet";a="servlet-a
pi";v="2.5",org.osgi.core-4.2.0.jar;g="org.osgi";a="org.osgi.core";v=
"4.2.0",org.osgi.compendium-4.2.0.jar;g="org.osgi";a="org.osgi.compen
dium";v="4.2.0",jersey-core-1.11.jar;g="com.sun.jersey";a="jersey-cor
e";v="1.11",jersey-server-1.11.jar;g="com.sun.jersey";a="jersey-serve
r";v="1.11",asm-3.1.jar;g="asm";a="asm";v="3.1",jettison-1.1.jar;g="o
rg.codehaus.jettison";a="jettison";v="1.1",stax-api-1.0.1.jar;g="stax
";a="stax-api";v="1.0.1",jackson-core-asl-1.5.5.jar;g="org.codehaus.j
ackson";a="jackson-core-asl";v="1.5.5",jackson-mapper-asl-1.5.5.jar;g
="org.codehaus.jackson";a="jackson-mapper-asl";v="1.5.5",jackson-jaxr
s-1.5.5.jar;g="org.codehaus.jackson";a="jackson-jaxrs";v="1.5.5",jack
son-xc-1.5.5.jar;g="org.codehaus.jackson";a="jackson-xc";v="1.5.5",or
g.apache.felix.http.api-2.0.4.jar;g="org.apache.felix";a="org.apache.
felix.http.api";v="2.0.4"
Import-Package: com.sun.jersey.api.core,com.sun.jersey.samples.hellowo
rld,com.sun.jersey.spi.container.servlet,com.sun.net.httpserver,javax
.activation,javax.annotation.security,javax.imageio,javax.imageio.spi
,javax.imageio.stream,javax.mail,javax.mail.internet,javax.mail.util,
javax.microedition.io,javax.naming,javax.security.auth.x500,javax.xml
.bind,javax.xml.bind.annotation,javax.xml.bind.annotation.adapters,ja
vax.xml.datatype,javax.xml.parsers,javax.xml.transform,javax.xml.tran
sform.dom,javax.xml.transform.sax,javax.xml.transform.stream,org.joda
.time,org.joda.time.format,org.w3c.dom,org.w3c.dom.bootstrap,org.w3c.
dom.ls,org.xml.sax
Tool: Bnd-1.50.0
Web-ContextPath: jersyweb
Webapp-Context: jersyweb**
但是当我在 Apache Felix 中部署并启动它时,我看到以下错误。
啊! org.osgi.framework.BundleException: bundle war-bundle [5] 中 Unresolved 约束:无法解决 5.0:缺少要求 [5.0] osgi.wiring.package; (osgi.wiring.package=com.sun.jersey.api.core)
包 com.sun.jersey.api.core 是 jersey-core-1.11.jar 的一部分,它已经在 MANIFEST.MF 的 Bundle-ClassPath 中提到,那么为什么我会收到此错误?
如果我开始放置相应的捆绑文件,例如 jersey-core-1.11.jar 的 bundle ,那么问题就解决了,但我认为这不是一个很好的解决方案。事实上,为此目的,只提供了 maven bundle 插件和标签。
请指教。
最佳答案
快速查看 MANIFEST 文件后,我发现 有一个用于 com.sun.jersey.api.core 的导入包。我想你也嵌入了这个包,但这对这种依赖没有影响。如果你要求依赖,你会得到它
只需将其删除即可,在 Maven 中,您可以将其从 Import-Package 行中删除。
此外,您确实嵌入了很多东西。我认为在 webapp 中嵌入 servlet api 不是一个好主意,因为应用程序服务器提供了它。它可能有效,但在部署到其他应用程序服务器时可能会遇到麻烦。
关于osgi - 在 Felix.missing requirement [5.0] osgi.wiring.package 中启动 bundle 时出现问题; (osgi.wiring.package=com.sun.jersey.api.core),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9989034/
每当我运行命令以将 Virtualbox 驱动程序启动 Minishift 到操作系统主机时,它都需要一段疯狂的时间,而且它永远不会结束。有时我什至收到有关达到存储限制的错误消息。 不知道是不是描述h
您好,我正在使用 npm 运行一个基本的 React 项目,我正尝试在 docker 容器中启动它。但是我实际上无法让项目运行。我的 dockerfile 看起来像这样: FROM node:7.8.
所以我想从我的 SSH 终端开始游戏。 这真的很奇怪,当我直接从 Linux GUI 执行此操作时,它可以工作。但是当我使用 SSH 客户端进行远程连接时,它就崩溃了。似乎与我的显示驱动程序有关。 U
我有一个显示图像的动态壁纸。我在 Activity 中更改了该图像。然后我需要通知动态壁纸,以便它知道重新加载资源。 Intent 似乎是完美、简单的解决方案: Intent intent = new
我有一个似乎无法解决的问题。我在 Boot Dashboard 中使用 STS 3.9.2 从 Eclipse (Oxygen) 启动 Spring Boot 应用程序没有任何问题: 但是,当我尝试从
全新的 Python,在我开始摆弄东西之前先设置和安装东西。我的理解是 Python 2.7 和 Python 3.3 之间存在一些显着差异/不兼容,尽管这两个版本都得到了很好的使用,所以我认为最好安
在使用了很长时间的 jQuery 之后,我有一个问题,我正在使用 jQuery 模式(样式)编写一个简单的代码, (function(window, undefined) { var jQu
我正在尝试在 spring boot 应用程序下的非 spring 托管类中配置 Autowired。我在 tomcat 服务器下部署的 Web 应用程序下成功运行了这个。但是当我想在 spring
我对 xmonad 完全陌生,但我想开始使用它来提高我的工作效率。 这是我一直在使用的指南(我使用的是 Apple OS X Snow Leopard) http://xmonad.org/tour.
我试图将Spring Boot指南中的Managing Transactions示例扩展到两个数据源,但是@Transaction注释似乎仅对其中一个数据源有效。 在“Application.java
conEmu 有没有办法默认打开多个不同的选项卡? 我看到这个页面解释了如何使用 splits , 我意识到我可以按 Ctrl + T, 1, Enter,但我希望有一种方法可以自动执行此操作! "%
我正在寻找快速而肮脏的答案。我当时脑子一片空白,盯着屏幕看了 12 个小时以上,我想我中枪了。 我想做一个简单的 SignalR 应用程序作为教程。我找到了这个example ,但我不断收到票证未定义
我正在使用 Azure Powershell cmdlet 来启动/停止 VM。 Start-AzureVM [-ServiceName] [-Name] [ ] Stop-AzureVM [-S
我想使用Powershell脚本代码启动/停止iis和mssql 意味着当我运行ps脚本时,我想启动/停止iis和mssql 我在网上搜索了它,发现了一些代码,但按照我的要求无法正常工作 码: $ii
我在 liferay 工作。我们在我们的项目中使用一个模块来创建 liferay 主题。我使用命令 ant -Ddeploy.war=true 将它部署在服务器中。 war 文件在 liferay 部
我想在已安装 Python 2.7 的 Windows XP 计算机上运行 IPython(版本 0.12)。 我通过 Windows 二进制安装程序安装,但安装后 IPython 没有显示在菜单中,
我从创建了自己的简单图片。 FROM python:2.7.11 RUN mkdir /extra/later/ \ && mkdir /yyy 现在,我可以执行以下步骤: docker run
$(document).ready(function () { setTimeout(function() { window.location.reload(); }, 2000); // 2
我刚刚创建了一个帐户 OpenWeatherMap 我想通过城市 ID API 调用获取当前位置的天气: http://api.openweathermap.org/data/2.5/weather?
我注意到,如果我更改 xcasset 中的图像,启动 Storyboard不会更新。 例如,假设您的启动 Storyboard中有一个 UIImage View ,其中包含一个名为“logo”的蓝色图
我是一名优秀的程序员,十分优秀!