在资源适配器上运行Jackrabbit垃圾收集器

时间:2013-01-28 11:19:06

标签: jackrabbit jcr

我想使用资源适配器部署模型运行数据存储区垃圾收集器。我尝试关闭jackrabbit-jca存储库然后运行建议的代码here,但我不知道我需要包含哪些库,因为我现在只通过jcr api访问jackrabbit。我总是得到ClassDefNotFoundExceptions或java.lang.LinkageError:加载器约束违规。 Jackrabbit版本是2.4.2

1 个答案:

答案 0 :(得分:0)

要获取运行Jackrabbit所需的jar文件列表,您可以像the project jackrabbit-webapp does一样使用Maven和列表依赖项:

<properties>
    <jackrabbit.version>2.5.3</jackrabbit.version>
</properties>
<dependencies>
<dependency>
  <groupId>javax.jcr</groupId>
  <artifactId>jcr</artifactId>
</dependency>
<dependency>
  <groupId>org.apache.jackrabbit</groupId>
  <artifactId>jackrabbit-core</artifactId>
  <version>${jackrabbit.version}</version>
</dependency>
<dependency>
  <groupId>org.apache.tika</groupId>
  <artifactId>tika-parsers</artifactId>
  <exclusions>
    <exclusion>
      <groupId>commons-logging</groupId>
      <artifactId>commons-logging</artifactId>
    </exclusion>
  </exclusions>
</dependency>
<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>jcl-over-slf4j</artifactId>
</dependency>
<dependency>
  <groupId>org.apache.jackrabbit</groupId>
  <artifactId>jackrabbit-jcr-server</artifactId>
  <version>${jackrabbit.version}</version>
</dependency>
<dependency>
  <groupId>org.apache.jackrabbit</groupId>
  <artifactId>jackrabbit-jcr-servlet</artifactId>
  <version>${jackrabbit.version}</version>
</dependency>
<dependency>
  <groupId>org.apache.jackrabbit</groupId>
  <artifactId>jackrabbit-jcr-rmi</artifactId>
  <version>${jackrabbit.version}</version>
</dependency>
<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>jul-to-slf4j</artifactId>
  <version>${slf4j.version}</version>
  <scope>test</scope>
</dependency>
</dependencies>

如果您不使用Maven,可以通过downloading the jackrabbit-webapp jackrabbit-webapp-2.5.3.war获取jar文件列表,然后重命名为.zip,然后展开。然后,jar文件位于目录WEB-INF/lib中。这是“最坏情况”列表,实际上你可能不需要像pdfbox,poi,derby等等。