我正在尝试在此之后对码头使用登录访问但是,启动服务器时出现此异常:
配置错误 | 登录.xml | java.lang.ClassNotFoundException: ch.qos.logback.access.jetty.RequestLogImpl
这是来自 jetty 的代码.xml导致问题:
<Ref id="RequestLogHandler">
<Set name="requestLog">
<New id="requestLogImpl" class="ch.qos.logback.access.jetty.RequestLogImpl">
<Set name="resource">as/classpath/resource/myaccess.xml</Set>
</New>
</Set>
</Ref>
这是绒球.xml
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-access</artifactId>
<version>1.0.13</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.0.13</version>
</dependency>
</dependencies>
<build>
<finalName>oslc4j-jira-sample</finalName>
<plugins>
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<configuration>
<webAppConfig>
<contextPath>/OSLC4JJira</contextPath>
</webAppConfig>
<!-- Jetty config adds logging -->
<jettyConfig>${project.build.directory}/classes/jetty.xml</jettyConfig>
<!-- enable hot deploy -->
<reload>automatic</reload>
<scanIntervalSeconds>5</scanIntervalSeconds>
<scanTargets>
<scanTarget>WebContent</scanTarget>
</scanTargets>
<systemProperties>
<systemProperty>
<name>config.dir</name>
<value>${basedir}/src/test/resources</value>
</systemProperty>
<systemProperty>
<name>jetty.logs</name>
<value>${basedir}/target</value>
</systemProperty>
<systemProperty>
<name>jetty.port</name>
<value>8080</value>
</systemProperty>
</systemProperties>
<webResources>
<resource>
<directory>${build.sourceDirectory}</directory>
<targetPath>sources</targetPath>
</resource>
</webResources>
<dependencies>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.0.13</version>
</dependency>
</dependencies>
</configuration>
</plugin>
</plugins>
你通常必须这样做:"下载 logback 发行版后,将文件 logback-core-VERSION.jar 和 logback-access-VERSION.jar放在 $JETTY_HOME/lib 目录下,其中 $JETTY_HOME 是你安装 Jetty 的文件夹。logback-access 0.9.31 及更高版本面向 Jetty 版本 7.x 和 8.x。Logback-access 版本 0.9.30 及更早版本以 Jetty 版本 6.x 为目标,但您使用的是 Jetty Maven 插件,因此:
您是否在码头插件中添加了依赖项?
<project>
...
<build>
...
<plugins>
...
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>8.0.4.v20111024</version><!-- or whatever version you specified -->
<configuration>
...
</configuration>
...
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.0.13</version>
</dependency>
...
</plugin>
...
</plugins>
...
</build>
...
</project>
正如user2878524所说,这是一个错误链接