7 Replies Latest reply on Apr 18, 2011 5:00 AM by chaiyilin

    the ShrinkWrap and the NoClassDefFoundError

    chaiyilin

      hi guys,

       

      i am a ShrinkWrap novice and just want to try the simplest example for novice ShrinkWrap (not with Arquillian), so the method:

       

          public static void main(String[] args) {

              JavaArchive javaArchive = ShrinkWrap.create(JavaArchive.class,

                      "test.jar");

              javaArchive = javaArchive.addClasses(WordItem.class, WordItemDAO.class);

              javaArchive = javaArchive.addAsManifestResource("persistence.xml",

                      ArchivePaths.create("persistence.xml"));

              System.out.println(javaArchive.toString());

          }

       

      the class got complied but the execution immediately stop at first line: JavaArchive javaArchive = ShrinkWrap.create(JavaArchive.class,"test.jar");

      and the exception:

       

      Exception in thread "main" java.lang.NoClassDefFoundError: org/jboss/shrinkwrap/api/spec/JavaArchive

          at org.cyl.english.ffl.Entities.WordItemTest.main(WordItemTest.java:25)

      Caused by: java.lang.ClassNotFoundException: org.jboss.shrinkwrap.api.spec.JavaArchive

          at java.net.URLClassLoader$1.run(URLClassLoader.java:202)

          at java.security.AccessController.doPrivileged(Native Method)

          at java.net.URLClassLoader.findClass(URLClassLoader.java:190)

          at java.lang.ClassLoader.loadClass(ClassLoader.java:307)

          at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)

          at java.lang.ClassLoader.loadClass(ClassLoader.java:248)

          ... 1 more

       

      what wrong with the code?