我的目的是将某个同学小项目:classbean\testProject\system 目录下的 Test.class  反编译生成Test.java后,修改JAVA文件,重新生成Test.class.现在新的JAVA文件已经写好,也挂在了新的项目中,不过编译出来的class文件却有很多错误,所以要请教下啦:比如java文件前几行如下:
package testProject.system;    //这第一行 提示错
import java.io.File;      //这第二行 正确
import testProject.conn.RecordSet;  //第三行 提示错.第3行的,我找到文件:...\classbean\testProject\conn\RecordSet.class但是这个import如何引用到项目中啊。
还有最前的那第一行的package  我找到一个目录 classbean\testProject\system    那我在现在新项目中也要建立对应文件夹么?怎么建啊?
新手上路,请各位朋友多指教啦,谢谢。

解决方案 »

  1.   

    import testProject.conn.RecordSet;  //第三行 提示错. 你逆向工程的这个类调用的其他类
    package testProject.system;这个包应该是你自己的文件所在的包,这些都是最基础的知识。
      

  2.   

    想简单的话,把所有的类都不要带包结构,直接放在同一个文件夹下,用javac *.java编译,java Test来运行
    如果想带包结构的话,就要在项目里边建对应的包了,名字要一样,位置要放正确(引入的类要放在对应的包下),这样也不会出错
      

  3.   

    因为 我只想替换 Test.class   文件.
    所以 反编译出来文件里的
    import 那几行不想改动啊。
      

  4.   

    帅哥,我知道调用了其他类咯,所以找到了对应的class文件,就想问怎么导入到项目中啊。
    我用的是Myeclipse 5.5
    谢谢。
      

  5.   

    lz的意思是反编译过来的java代码原来引用的包改成目前自己项目中对应的包中的类,在重新生成。class文件吧!
    怎么这么麻烦啊!重新写一次不久行了吗!!
    如果非要这样试试2搂的建议
      

  6.   

    把 Test.java 放在   ....\classbean\Test.java
    运行 CMD
    CD ...\classbeanjavac Test.java
    然后把 ...\classbean\Test.class 移到 classbean\testProject\system
      

  7.   

    1. 把你同学所有项目的所有.class(除Test.class)文件打成一个.jar,并引入到你新建的工程;
    2. 在这个工程中,建立testProject.system包,把你新建立的Test.java放在此;
    3. 重新编译。可选,编译好之后,可以把Test.class文件替换掉,重新打成一个新的.jar,然后替换原来的.jar。
      

  8.   

    你把那两个出错的import删除掉如果是用eclipse或者myeclipse编辑的话,会有叉叉的错误,把鼠标移动到叉叉按照提示来import类
      

  9.   

    package testProject.system;    //这第一行 提示错 
    import java.io.File;      //这第二行 正确 
    import testProject.conn.RecordSet;  //第三行 提示错. 
    第一行是你JAVA类放的位置,你确定你是放到项目下的testProject.system包底下吗?
    建议你先在你自己项目底下想在哪个包放这个类,你就自己手动先建类,然后再把代码复制进去(注意别全部复制哦,package XXXX这段别复制,也就是第一串代码)
    第三行错是理所当然的,你项目根本就没testProject.conn.RecordSet这个包结构
    希望你好好学习JAVA,连最基本的都还没弄清楚......
      

  10.   

    把CLASS打开JAR包,用jar命令,去网上搜一下,很多.
      

  11.   

    没人答到点子上呀。我比较死板,就象要我要的效果咯。不要什么JAR,那些的,就是要重新编译一个CLASS文件,然后在项目中进行替换啊。
      

  12.   

    晕,看来lz没有看明白上面几位的意思啊 ,你要编译Test.java 肯定要把这个类需要的类也反编译成java文件,并且Test.java 和 反编译后的其他文件 也必须放到package 所指定的目录的,这是必须的,要不就算你编译通过,把编译的class文件 放到那个工程的 classbean\testProject\system 下也不能使用的。 
      

  13.   

    兄弟,你发给我的文件里:
    public String MakeLicensecode() {
    GetPhysicalAddress localGetPhysicalAddress = new GetPhysicalAddress();
    this.licensecode = Util.getEncrypt(localGetPhysicalAddress
    .getPhysicalAddress());
    this.staticobj.putObject("StaticLicenseCode", this.licensecode); return this.licensecode;
    }
    红色那行报错了。
    看意思,在package weaver.system(也就是License.java所在的package)下应该还有一个类:GetPhysicalAddress才对吧?
    但是你给我的文件里没有这样一个目录啊。
      

  14.   


    多谢楼上帅哥,俺重发了邮件,目的是要重新生成 个class文件.帅哥,来这领分吧:http://topic.csdn.net/u/20100126/09/376a656d-2fc1-4fcf-b498-d2ad493ef734.html
      

  15.   

    bayougeng 朋友真是太帅了,结贴.