第一次用hibernate,按书上写的配置好了,但是运行test的时候,总是说
Exception in thread "main" java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.<init>(I)V
怎么会没有main呢?test.javapackage hibernate;
import org.hibernate.*;
import org.hibernate.cfg.*;
public class test {    public static void main(String[] args) {
        try {
            SessionFactory sf = new Configuration().configure().buildSessionFactory();
            Session session = sf.openSession();
            Transaction tx = session.beginTransaction();            for (int i = 0; i < 200; i++) {
                user User = new user();
                User.setUserName("customer" + i);
                User.setPassWord("customer");
                session.save(User);
            }            tx.commit();
            session.close();
        } catch (HibernateException e) {
            e.printStackTrace();
        }
    }
}user.hbm.xml的配置是<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><hibernate-mapping>
    <class name="hibernate.user" table="user">
        <id name="id" column="id"><generator class="identity"/></id>
        <property name="userName" type="string">
            <column name="userName" length="64" not-null="true"/>
        </property>
        <property name="passWord" type="string">
            <column name="passWord" length="64" not-null="true"/>
        </property>
        <property name="email" type="string">
            <column name="email" length="64" not-null="true"/>
        </property>
    </class>
</hibernate-mapping>
user类就不写了,就像一个bean那样

解决方案 »

  1.   


     type="string ==》type="java.lang.String"
      

  2.   

    希望楼主能提供更多的错误信息。
    另外顺便说一句,你把错误信息翻译错了。其实错误信息说的是:“在主线程中出现了没有这个方法异常”不要看见"main",就想着是main方法。恰恰人家说的是thread main:主线程。另外,楼主的语法规范太差了!类名首字母要大写,你怎么都小写了?变量名的首字母要小写,你怎么又都搞些大写?
      

  3.   

    估计是哪个包给加少了,所有包都在下载下来的hibernate3压缩包中的lib目录中,把他们拷到你的包目录下再试试。
    重点关注asm-attrs.jar ,直接使用myeclipse做较好
      

  4.   

    看来是的,jar包有没有加进来