精华内容
下载资源
问答
  • java编译为class文件

    2016-11-09 08:39:11
    java编译一个java文件,用代码进行编译: public static void main(String[] args) throws Exception{    //编译(compiler)  String filename = System.getProperty("user.dir") + "/src/cn/co

    在java中编译一个java文件,用代码进行编译:

               public static void main(String[] args) throws Exception{
            
            //编译(compiler)
            String filename = System.getProperty("user.dir") + "/src/cn/com/jit/test/Cat.java";
            JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
            StandardJavaFileManager fileManager = compiler.getStandardFileManager(null, null, null);
            Iterable it = fileManager.getJavaFileObjects(filename);
            CompilationTask ct = compiler.getTask(null, fileManager, null, null, null, it);
            ct.call();
            fileManager.close();
            
            //load class into memory and create an instance
            URL[] urls = new URL[]{new URL("file:/" + System.getProperty("user.dir") + "/src/")};
            URLClassLoader ul = new URLClassLoader(urls);
            Class c = ul.loadClass("cn.com.jit.test.Cat");
            System.out.println(c);
            
        }
                  
    
    


    展开全文
  • 在D盘test目录下有两个java文件:AlTest1.java、AlTest2.java,现需要通过java代码实现java文件到class文件的编译操作:import java.io.BufferedReader;import java.io.InputStream;import java.io.InputStreamRea.....

    所谓动态编译,就是在程序运行时产生java类,并编译成class文件。

    在D盘test目录下有两个java文件:AlTest1.java、AlTest2.java,现需要通过java代码实现java文件到class文件的编译操作:

    import java.io.BufferedReader;

    import java.io.InputStream;

    import java.io.InputStreamReader;

    import javax.tools.JavaCompiler;

    import javax.tools.ToolProvider;

    import org.junit.Test;

    import org.junit.runner.RunWith;

    import org.springframework.boot.test.context.SpringBootTest;

    import org.springframework.context.annotation.ComponentScan;

    import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

    import com.piao.main.ApplicationAdmin;

    @RunWith(SpringJUnit4ClassRunner.class)

    @ComponentScan("com.piao")

    @SpringBootTest(classes = ApplicationAdmin.class)

    public class Compiler {

    @Test

    public void compiler1(){

    String javaAbsolutePath = "D:/test/AlTest1.java";

    JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();

    int status = compiler.run(null, null, null, "-encoding", "UTF-8", "-classpath", javaAbsolutePath.toString(), javaAbsolutePath);

    if(status!=0){

    System.out.println("没有编译成功!");

    }

    }

    @Test

    public void compiler2(){

    String javaAbsolutePath = "D:/test/AlTest2.java";

    try {

    Process process = Runtime.getRuntime().exec("javac -classpath D:/test/ " + javaAbsolutePath);

    InputStream errorStream = process.getErrorStream();

    InputStreamReader inputStreamReader = new InputStreamReader(errorStream);

    BufferedReader bufferedReader = new BufferedReader(inputStreamReader);

    String line = null;

    while ((line=bufferedReader.readLine()) != null){

    System.out.println(line);

    }

    int exitVal = process.waitFor();

    System.out.println("Process exitValue: " + exitVal);

    } catch (Exception e) {

    e.printStackTrace();

    }

    }

    }

    运行后, D:\test 目录会生成两个class文件

    238986c49fcb70da34f29c9220070d5a.png

    其中方法compiler1是使用jdk自带的rt.jar中的javax.tools包提供的编译器

    方法compiler2是使用Runtime执行javac命令

    参考:

    本文同步分享在 博客“Thinkingcao”(CSDN)。

    如有侵权,请联系 support@oschina.cn 删除。

    本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

    展开全文
  • java反编译-可以把class文件反编译为java源码。很不错的一个
  • 怎么把java文件编译为class文件

    万次阅读 2019-04-11 11:05:36
    java文件轻松编译为class文件 1.需要有配置好的java的环境变量 2.在你的jdk目录下的bin目录下打开cmd 2.然后找到你要编译的java文件的路径,例如我要编译的java文件在:E:\IntelliJ IDEA\Workplace\SpringJdbcTest\...

    java文件轻松编译为class文件

    1.需要有配置好的java的环境变量
    2.在你的jdk目录下的bin目录下打开cmd
    在这里插入图片描述
    2.然后找到你要编译的java文件的路径,例如我要编译的java文件在:E:\IntelliJ IDEA\Workplace\SpringJdbcTest\src\BookShop\Main.java

    3.使用命令为javac E:\IntelliJ IDEA\Workplace\SpringJdbcTest\src\BookShop\Main.java就大功告成了,就可以找到相应的class文件
    在这里插入图片描述

    展开全文
  • 注意:1、TestOracle.java 与文件里面 class 同名2、windows 多依赖包用;分隔,linux 用:分隔如:java -Xbootclasspath/a:ojdbc6.jar;xxx.jar -jar testOracle.jarjava -Xbootclasspath/a:ojdbc6.jar:xxx.jar -jar...

    注意:

    1、TestOracle.java 与文件里面 class 同名

    2、windows 多依赖包用;分隔,linux 用:分隔如:

    java -Xbootclasspath/a:ojdbc6.jar;xxx.jar  -jar testOracle.jar

    java -Xbootclasspath/a:ojdbc6.jar:xxx.jar  -jar testOracle.jar

    带依赖路径编译:

    PS D:\Development\maven.m2\repository\com\oracle\ojdbc6\12.1.0.1> javac -cp .\ojdbc6.jar .\TestOracle.java -d .

    带 main 函数 class 入口打包

    PS D:\Development\maven.m2\repository\com\oracle\ojdbc6\12.1.0.1> jar -cvfe testOracle.jar TestOracle *.class

    已添加清单

    正在添加: TestOracle.class(输入 = 1864) (输出 = 1032)(压缩了 44%)

    带依赖路径执行 jar 包

    PS D:\Development\maven.m2\repository\com\oracle\ojdbc6\12.1.0.1> java -Xbootclasspath/a:ojdbc6.jar -jar testOracle.jar

    展开全文
  • 所谓动态编译,就是在程序运行时产生java类,并编译class文件。 在D盘test目录下有两个java文件:AlTest1.java、AlTest2.java,现需要通过java代码实现java文件到class文件的编译操作: import java.io....
  • 3.拖拽单个 *.java 文件到下面批处理,是把 java 文件编译为 class 文件。 【★★★java 编译为 class★★★】.cmd 4.拖拽单个 *.class 文件到下面批处理,是运行 class 程序。 【★★★ 运行 class 程序...
  • 将jsp生成java然后反编译为class然后打入jar
  • JAVA编译CLASS

    2016-11-11 17:33:13
    可以反编译class文件源码。
  • 一、运行class文件执行带main方法的class文件,命令行为:java 注意:CLASS文件名不要带文件后缀.class例如:...java .CLASS文件名例如:PackageTest.java中,其包名:com.ee2ee.test,对应的语句:package co...
  • java批量反编译.class文件.java文件-附件资源
  • 【javac命令不能使用,提示不是内部命令或外部命令,请查看历史文章】=================需求说明==========================之前的文章中,仅说明了单个的java文件,没有多的外部依赖的单个java文件编译class文件...
  • 原本以为javac一下,java一下就可以得到自己想要的结果,可是结果大跌眼镜,自己被一个问题卡主了:java文件成功编译,但当运行编译后的class文件却报一个异常:NoClassDefFoundError。当时的具体情况是这样的:java...
  • 【问题引入】很多时候,需要用到命令行来进行Java文件的编译。在用习惯了IDE 可能会不清楚如何在cmd命令行窗口进行编译,简单的都还好,带有包路径的可能会让很多人觉得有点小头疼。最近试了一下,发现了问题,就...
  • 下列哪项是诱发甲状腺功能亢进的因素( ) 【单选题】社会适应能力不包括( ) 【单选题】狭义的心身疾病不包括( ) 【单选题】与健康相关的主要社会环境因素不包括( ) 【单选题】消化性溃疡的病人提供心理支持不包括( ...
  • 配置好Java环境(描述的不太好,望见谅!)配置信息image.png路径:我的电脑 -----> 属性----->高级系统设置----->环境变量----->系统变量(下面 系统变量,不是上面用户变量)系统变量与用户变量的区别:...
  • 绿色软件,小巧,能够把编译好的class文件反编译为java文件
  • 前端编译器: 将Java文件编译为class文件的编译器,目前主要有以下两个,Sun提供的Javac 和Eclipse JDT中的增量式编译器(ECJ) JIT编译器: 虚拟机后端运行期编译器,把字节码转换为机器码的过
  • 我们有一个Test.jar文件,我们的批处理文件的名称为start.bat内容为:@echo off java -jar Test.jarpause当然前提是这个.jar文件有主类,有...1、javac命令是用来编译.java文件为class文件的,比如一个Test.java,那...
  • PS:2018-03-08 10:11更新 修改编译的路径 原路径WebRoot,修改WebRoot/classes,否则会出现include会找不到jsp等问题 1.出现这个问题先检查一下输出路径 idea的class输出路径与eclipse是不一样的,idea...
  • 【javac命令不能使用,提示不是内部命令或外部命令,请查看历史文章】=================需求说明==========================之前的文章中,仅说明了单个的java文件,没有多的外部依赖的单个java文件编译class文件...
  • Java类动态加载(一)——java源文件动态编译为class文件最近在做java动态加载这方面的工作,起初也遇到了很多困难。网上关于这方便的东西很零散,为了便于日后回过头来再看,于是我将这几天的心得体会总结如下。什么...
  • .class编译成.java啥你非要我写那么多描述的汉字呢。 功能又不是用汉字吹出来的
  • 编译java文件的时候会发现一个java文件可以生成的多个class文件,而且有的还含有“$”符号,这个符号代表的是内部类,举个例子: public class ClassA { private class ClassB { private void show() { ...
  • 方法一: 利用Eclipse 1、Eclipse下新建工程;2、右键build path;...4、Libraries==>Add Class Folder;... 5、新建个要编译的文件的包路径,把反编译过来的java拷贝进去。 OK无错误!
  •   Java Decompiler 下载地址 http://java.decompiler.free.fr/?q=jdgui Jad 下载地址http://www.varaneckas.com/jad      
  • Java文件编译成class后无法运行 之前一直用的eclipse,今天突然想用命令行试试,在eclipse-workspace/java_test下创建...java Hellojava.java编译出Hellojava.class之后执行 javac Hellojava会报错: 退出一层 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 12,554
精华内容 5,021
关键字:

java编译为class

java 订阅