我正在嘗試在OSGi
中使用的示例,但我在啓動激活器時遇到了一個奇怪的問題。Missing Constraint:Import-Package:無法啓動激活器
當我啓動激活器時彈出一個驗證對話框,並說上述錯誤。我已經導入了這些軟件包,並且第一次看到這個問題。
我有以下激活類:
package org.aricent.jpaosgi;
public class Activator implements BundleActivator {
/*
* (non-Javadoc)
* @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
*/
public void start(BundleContext context) throws Exception {
System.out.println("Hello World!!");
try {
EntityManagerFactory emf = Persistence
.createEntityManagerFactory("todos");
EntityManager em = emf.createEntityManager();
} catch (Exception e) {
e.printStackTrace();
}
}
/*
* (non-Javadoc)
* @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
*/
public void stop(BundleContext context) throws Exception {
System.out.println("Goodbye World!!");
}
}
MANIFEST.MF
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
META-persistence: META-INF/persistence.xml
JPA-PersistenceUnits: todos
Bundle-Name: JpaOsgi
Bundle-SymbolicName: org.aricent.jpaOsgi
Bundle-Version: 1.0.0.qualifier
Bundle-Activator: org.aricent.jpaosgi.Activator
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Import-Package: javax.persistence;version="2.1.0",
org.osgi.framework;version="1.3.0"
Bundle-ActivationPolicy: lazy
周的persistence.xml
<?xml version="1.0" encoding="UTF-8" ?>
<persistence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
version="2.0" xmlns="http://java.sun.com/xml/ns/persistence">
<persistence-unit name="todos" transaction-type="RESOURCE_LOCAL">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<class>myJPAProject.Todo</class>
<properties>
<property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.EmbeddedDriver" />
<property name="javax.persistence.jdbc.url"
value="jdbc:derby:/home/vogella/databases/simpleDb;create=true" />
<property name="javax.persistence.jdbc.user" value="test" />
<property name="javax.persistence.jdbc.password" value="test" />
<!-- EclipseLink should create the database schema automatically -->
<property name="eclipselink.ddl-generation" value="create-tables" />
<property name="eclipselink.ddl-generation.output-mode"
value="database" />
</properties>
誰能plz幫助我在這裏。謝謝。