2013-06-20 19 views
0

我的POM文件:ZATS教程exsample的方法缺席代碼屬性,是不是在類文件的javax/servlet的/的ServletException本地或抽象

<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.upc</groupId> 
    <artifactId>ZATS4TEST</artifactId> 
    <version>1.0-SNAPSHOT</version> 
    <packaging>war</packaging> 

    <name>ZATS4TEST</name> 

    <properties> 
     <!--  <endorsed.dir>${project.build.directory}/endorsed</endorsed.dir> --> 
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
    </properties> 

    <dependencies> 
     <dependency> 
      <groupId>org.zkoss.zk</groupId> 
      <artifactId>zkbind</artifactId> 
      <version>6.5.2</version> 
     </dependency> 
     <dependency> 
      <groupId>org.zkoss.zk</groupId> 
      <artifactId>zul</artifactId> 
      <version>6.5.2</version> 
     </dependency> 
     <dependency> 
      <groupId>org.zkoss.zk</groupId> 
      <artifactId>zkplus</artifactId> 
      <version>6.5.2</version> 
     </dependency> 
     <dependency> 
      <groupId>org.zkoss.zk</groupId> 
      <artifactId>zhtml</artifactId> 
      <version>6.5.2</version> 
     </dependency>   
     <dependency> 
      <groupId>javax</groupId> 
      <artifactId>javaee-web-api</artifactId> 
      <version>6.0</version> 
      <scope>provided</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.zkoss.zats</groupId> 
      <artifactId>zats-mimic-ext6</artifactId> 
      <version>1.1.0</version> 
      <scope>test</scope> 
     </dependency>     
     <dependency> 
      <groupId>junit</groupId> 
      <artifactId>junit</artifactId> 
      <version>4.11</version> 
      <scope>test</scope> 
      <type>jar</type> 
     </dependency>    
    </dependencies> 

    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <version>2.3.2</version> 
       <configuration> 
        <source>1.6</source> 
        <target>1.6</target> 
        <!--      
             <compilerArguments> 
              <endorseddirs>${endorsed.dir}</endorseddirs> 
             </compilerArguments> 
        -->      
       </configuration> 
      </plugin> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-war-plugin</artifactId> 
       <version>2.1.1</version> 
       <configuration> 
        <failOnMissingWebXml>false</failOnMissingWebXml> 
       </configuration> 
      </plugin> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-dependency-plugin</artifactId> 
       <version>2.1</version> 
       <!--     
           <executions> 
            <execution> 
             <phase>validate</phase> 
             <goals> 
              <goal>copy</goal> 
             </goals> 
             <configuration> 
              <outputDirectory>${endorsed.dir}</outputDirectory> 
              <silent>true</silent> 
              <artifactItems> 
               <artifactItem> 
                <groupId>javax</groupId> 
                <artifactId>javaee-endorsed-api</artifactId> 
                <version>6.0</version> 
                <type>jar</type> 
               </artifactItem> 
              </artifactItems> 
             </configuration> 
            </execution> 
           </executions> 
       -->     
      </plugin> 
     </plugins> 
    </build> 

    <repositories> 
     <repository> 
      <id>ZK CE</id> 
      <name>ZK CE Repository</name> 
      <url>http://mavensync.zkoss.org/maven2</url> 
     </repository> 
    </repositories> 
</project> 

錯誤:

------------------------------------------------------------------------------- 
Test set: HelloTest 
------------------------------------------------------------------------------- 
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.411 sec <<< FAILURE! 
HelloTest Time elapsed: 0 sec <<< ERROR! 
java.lang.ClassFormatError: Absent Code attribute in method that is not native or abstract in class file javax/servlet/ServletException 
    at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:791) 
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) 
    at java.net.URLClassLoader.access$100(URLClassLoader.java:71) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:423) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:356) 
    at org.eclipse.jetty.servlet.ServletContextHandler.<init>(ServletContextHandler.java:120) 
    at org.eclipse.jetty.servlet.ServletContextHandler.<init>(ServletContextHandler.java:100) 
    at org.eclipse.jetty.servlet.ServletContextHandler.<init>(ServletContextHandler.java:88) 
    at org.eclipse.jetty.webapp.WebAppContext.<init>(WebAppContext.java:172) 
    at org.zkoss.zats.mimic.impl.emulator.JettyEmulator.<init>(JettyEmulator.java:90) 
    at org.zkoss.zats.mimic.impl.emulator.EmulatorBuilder.create(EmulatorBuilder.java:130) 
    at org.zkoss.zats.mimic.DefaultZatsEnvironment.init(DefaultZatsEnvironment.java:86) 
    at org.zkoss.zats.mimic.Zats.init(Zats.java:46) 
    at HelloTest.init(HelloTest.java:15) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:601) 
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) 
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) 
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) 
    at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24) 
    at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27) 
    at org.junit.runners.ParentRunner.run(ParentRunner.java:309) 
    at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:53) 
    at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:123) 
    at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:104) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:601) 
    at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:164) 
    at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:110) 
    at org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireStarter.java:175) 
    at org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcessWhenForked(SurefireStarter.java:107) 
    at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:68) 

我怎樣才能解決這個問題? 教程中的所有代碼 http://books.zkoss.org/wiki/ZATS%20Essentials/Getting%20Started/First%20Mimic%20Test%20Case

我讀了很多問題,但問題沒有解決。

回答

1

這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> 

    <groupId>com.upc</groupId> 
    <artifactId>ZATS4TEST</artifactId> 
    <version>1.0-SNAPSHOT</version> 
    <packaging>war</packaging> 

    <name>ZATS4TEST</name> 

    <properties> 
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
     <maven.build.timestamp.format>yyyyMMdd</maven.build.timestamp.format> 
     <junit.version>4.11</junit.version> 
     <org.zkoss.zk.version>6.5.2</org.zkoss.zk.version> 
     <zats-mimic.version>1.1.0</zats-mimic.version>  
    </properties> 
    <repositories> 
     <repository> 
      <id>zk repository</id> 
      <url>http://mavensync.zkoss.org/maven2</url> 
     </repository> 
     <repository> 
      <id>ZK EE Evaluation</id> 
      <url>http://mavensync.zkoss.org/zk/ee-eval</url> 
     </repository> 
    </repositories> 
    <pluginRepositories> 
     <pluginRepository> 
      <id>zkmaven</id> 
      <name>ZK Maven Plugin Repository</name> 
      <url>http://mavensync.zkoss.org/maven2</url> 
     </pluginRepository> 
    </pluginRepositories> 
    <dependencies> 
     <dependency> 
      <groupId>org.zkoss.zk</groupId> 
      <artifactId>zkbind</artifactId> 
      <version>6.5.2</version> 
     </dependency> 
     <dependency> 
      <groupId>org.zkoss.zk</groupId> 
      <artifactId>zul</artifactId> 
      <version>${org.zkoss.zk.version}</version> 
     </dependency> 
     <dependency> 
      <groupId>org.zkoss.zk</groupId> 
      <artifactId>zkplus</artifactId> 
      <version>${org.zkoss.zk.version}</version> 
     </dependency> 
     <dependency> 
      <groupId>org.zkoss.zk</groupId> 
      <artifactId>zhtml</artifactId> 
      <version>${org.zkoss.zk.version}</version> 
     </dependency>   
     <dependency> 
      <groupId>org.zkoss.zats</groupId> 
      <artifactId>zats-mimic-ext6</artifactId> 
      <version>${zats-mimic.version}</version> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>junit</groupId> 
      <artifactId>junit</artifactId> 
      <version>${junit.version}</version> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>javax.servlet</groupId> 
      <artifactId>servlet-api</artifactId> 
      <version>2.5</version> 
      <scope>provided</scope> 
     </dependency> 
    </dependencies> 
    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <version>3.1</version> 
       <configuration> 
        <source>1.6</source> 
        <target>1.6</target> 
       </configuration> 
      </plugin> 
      <plugin> 
       <artifactId>maven-war-plugin</artifactId> 
       <groupId>org.apache.maven.plugins</groupId> 
       <version>2.3</version> 
       <configuration> 
        <failOnMissingWebXml>true</failOnMissingWebXml> 
       </configuration>     
      </plugin> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-dependency-plugin</artifactId> 
       <version>2.4</version> 
       <executions> 
        <execution> 
         <id>copy-dependencies</id> 
         <phase>package</phase> 
         <goals> 
          <goal>copy-dependencies</goal> 
         </goals> 
         <configuration> 
          <outputDirectory>${project.build.directory}/lib</outputDirectory> 
          <includeGroupIds>org.zkoss.zats,org.eclipse.jetty,junit</includeGroupIds> 
          <stripVersion>true</stripVersion> 
         </configuration> 
        </execution> 
       </executions> 
      </plugin>  
     </plugins> 
    </build> 
</project> 
0

的問題是,

<dependency> 
    <groupId>javax</groupId> 
    <artifactId>javaee-web-api</artifactId> 
    <version>6.0</version> 
    <scope>provided</scope> 
</dependency> 

只是當定義。你需要添加一個實現。

+0

我的pom.xml媒體鏈接有這個.-( – kotygoroshko

+0

而這就是問題有沒有方法機體的只是抽象類/方法和接口。 –

相關問題