zoukankan      html  css  js  c++  java
  • 【Java编程】Java在dos窗体编译与运行的批处理

           近期在Java编程过程中,常常使用到dos窗体对程序进行编译与执行。

    可是不方便之处在于每次都要输入命令进入将要编译的程序的文件夹(事实上也有简单的方法,在文章末尾给出)。于是编写了一个配置文件,能够一次改动,常常使用。(仅仅须要在以下程序中将路径改动为你所常常存放程序的文件夹)。前提当然是你已正确配置环境变量。详细方法为:将以下的程序放在新建的文本文件里,并将后缀名改为.bat.然后双击该文件。按提示操作就可以!

    程序源代码例如以下:(红色字体是须要依据你的存放路径改动的)

    echo off
    cls
    title Java在dos窗体的编译与运行
    color 0a 
    rem 将路径改为你将要编译运行的文件文件夹 比如:我的文件文件夹为"D:studytoolJavaclasses"(shift+右键 单击你的文件文件夹选择"复制为路径")
    D:
    cd D:
    cd studytoolJavaclasses
    set cd1=%cd%
    echo 当前文件夹%cd1%下已有的文件:
    dir /b
    :cx 
    set /p filename=请选择要编译或运行的文件名称(需写后缀名,按quit退出程序):
    if "%filename%"=="quit" (exit)
    set "leixing=%filename:~-5%"
    set "leixing1=%filename:~0,-5%"
    set "leixing2=%filename:~0,-6%"
    if "%leixing%"==".java"  (
    echo 请选择:(1.编译;2.运行;3.编译和运行)
    choice /c 123
    if errorlevel 3 (
    echo 正在编译……
    javac %filename%
    echo 正在运行……
    echo 运行结果为:
    java %leixing1% 
    goto cx
    )
    if errorlevel 2  (
    echo 该文件为.java文件。不能直接运行!
    goto cx
     )
    if errorlevel 1 (
    echo 正在编译……
    javac %filename%
    goto cx
    )
    echo 此时文件夹%cd1%下已有的文件:
    dir /b
    goto cx
    )
     
    if "%leixing%"=="class" (
    echo 请选择:(1.编译;2.运行。3.编译和运行)
    choice /c 123
    
    if errorlevel 3 (
    echo  该文件为.class文件,不能编译!
    goto cx
     )
    if errorlevel 2  (
    echo 正在运行……
    echo 运行结果为:
    java %leixing2% 
    goto cx
    )
    if errorlevel 1 (
    echo  该文件为.class文件。不能编译!
    goto cx
    )
    echo 此时文件夹%cd1%下已有的文件:
    dir /b
    goto cx
    ) else (echo 你输入的文件名称有误!
    goto cx)
     
    pause

    我的执行截图例如以下:
    1.编译.java文件

    2.运行.class文件


    3.处理异常和退出


           尽管上述方法比較人性化,可是也有不足之处:不能执行Java小程序。

    如今有一种更简单的方法能避免在dos窗体下进入程序所在文件夹的繁琐过程:将cmd.exe文件复制到程序的文件夹下就可以。



    原文:http://blog.csdn.net/tengweitw/article/details/32967117

    作者:nineheadedbird


  • 相关阅读:
    poj 2728 Desert King
    uva 439 Knight Moves
    hdu 1875 畅通工程再续
    scau实验题 8600 骑士周游问题(有障碍物)
    scau实验题 8596 Longest Ordered Subsequence
    poj 1679 The Unique MST
    uva 527 Oil Deposits
    poj 2533 Longest Ordered Subsequence
    .net 程序员 java 开发入门
    Collation conflict occur at operation on User define funtion & table's column
  • 原文地址:https://www.cnblogs.com/mthoutai/p/6823551.html
Copyright © 2011-2022 走看看