AJPFX编写cmd界面下一键编译、执行java代码的bat脚本

此脚本适合刚接触java的同学,在cmd界面下用jc取代 复杂的  javac *.java + java main使用说明:
把脚本内容复制到txt文本中,修改后缀名为.bat,运行一次即可完成配置,以后在cmd界面下输入 jc 即可完成编译+执行
功能:1.将当前目录下的java文件编译并执行
如遇多个主函数的java文件是,会提示并选择执行
bat代码如下,

  1. @echo off
  2. if not exist %SystemRoot%system32choice.exe echo 抱歉,系统缺少程序运行必须组件,无法继续&pause>nul&exit /b 1
  3. if not exist %SystemRoot%jc.bat copy %0 %SystemRoot%jc.bat 1>nul 2>nul & echo 配置成功,使用方法 jc &pause>nul&exit /b 0
  4. rem 制作时间2015年10月23日 xin3283@qq.com
  5. rem 用途:将当前目录下的java文件编译并执行
  6. set jclog=%temp%javac.log
  7. if exist %jclog% 1 0>%jclog% 2>nul
  8. javac *.java 2>%jclog%
  9. (for /f "skip=6 tokens=2 delims=个文件 " %%i in ('dir  /-c %jclog%') do @echo %%i|findstr /v "目录") >%temp%jcSize.txt
  10. set /p size=<%temp%jcSize.txt
  11. if not "%size%"=="0" (
  12.         type %jclog%
  13.         exit /b 1
  14. )
  15. setlocal enabledelayedexpansion
  16. set /a MainSum=1
  17.         for %%a in (*.java) do (
  18.                 type %%a|findstr /i "main" && ( set main!MainSum!=%%a & set /a MainSum=MainSum+1)
  19.         )>nul
  20. set /a MainSum=MainSum-1
  21. for /l %%a in (1,1,%MainSum%) do (
  22.         set main%%a=!main%%a:~0,-6!
  23. )
  24. if "%MainSum%"=="0" (
  25.         echo 错误: 找不到或无法加载主类,请检查Main函数
  26.         exit /b 2
  27. ) else if "%MainSum%"=="1" (
  28.         java %main1%
  29.         exit /b 0
  30. )
  31. echo 存在以下主函数,选择
  32. for /l %%i in (1,1,%MainSum%) do echo %%i:!main%%i!.java
  33. choice /c 123456789 /n
  34. java !main%errorlevel%!
  35. exit /b 0
原文地址:https://www.cnblogs.com/AJPFX/p/10835504.html