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

  1. @echo off
  2. if not exist %SystemRoot%\system32\choice.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

AJPFX编写cmd界面下一键编译、执行java代码的bat脚本的更多相关文章

  1. 页面上动态编译及执行java代码

    本文地址:http://www.cnblogs.com/liaoyu/p/real-time-compile-and-run-java-code-web-app.html 最近看到同事在页面上编译和执 ...

  2. bat脚本:Java一键编译(Javac java)

    bat脚本:Java一键编译(Javac java) D:    是指D盘 javat是要编译的.java文件所在的文件夹 也就是D:\javat bat代码: :start COLOR 0A cls ...

  3. 在执行java代码时,设置了断点,然后莫名的没执行完方法内的代码就结束了,此刻一般在出错处代码用try,catch包括起来

    在执行java代码时,设置了断点,然后莫名的没执行完方法内的代码就结束了,此刻一般在出错处代码用try,catch包括起来就能看到是什么异常了,记住try,catch语句的作用

  4. TeamCity编译执行selenium上传窗口脚本缺陷

    2015-07-04 18:05 编写本文 TeamCity编译selenium脚本,对于上传窗口处理只支持sendKeys的使用,不支持模拟人为按下Enter键和使用autoIt等操作,即使本地调试 ...

  5. MAC 系统下使用 Sublime Text 2 直接编译运行 java 代码

    本文参考了网上很多文章,就不一一列出了. sublime的版本是 sublime test 2 jdk版本 jdk1.7 1. mac下貌似直接就可以运行javac 和 java命令的,如果不能直接运 ...

  6. JAVA_HOME path classpath 以及cmd编译运行java代码

    JAVA_HOME PATH CLASSPATH 三者的区别:安装完jdk之后,首先在环境变量里面添加JAVA_HOME ,例如安装路径为C:\Program Files\Java\jdk1.6.0_ ...

  7. 命令行编译执行java

    命令行编译运行java程序 使用命令 javac进行编译 和 java进行执行. javac 后面跟着的是java文件的文件名,例如 HelloWorld.java. 该命令用于将 java 源文件编 ...

  8. [Unity] 编辑器运行中动态编译执行C#代码

    (一)问题 之前写Lua时,修改完代码 reload 就可以热重载代码,调试起来十分方便(重构则十分痛苦). 现在使用 C# 做开发,目前还没找到比较方便地进行热重载的方式.只能退而求其次,在调试上找 ...

  9. Android平台下使用lua调用Java代码经验总结

    动态语言以其执行的灵活性,可配置性.方便调试能够为开发带来极大的方便.假设用好了.能够极大的提高开发的效率. 怪不得像游戏开发这样复杂的软件开发里没有不集成脚本语言的. 当中,lua以其小巧,灵活.方 ...

随机推荐

  1. 【C#】无损转换Image为Icon 【C#】组件发布:MessageTip,轻快型消息提示窗 【C#】给无窗口的进程发送消息 【手记】WebBrowser响应页面中的blank开新窗口及window.close关闭本窗体 【手记】调用Process.EnterDebugMode引发异常:并非所有引用的特权或组都分配给呼叫方 【C#】DataRowState演变备忘

    [C#]无损转换Image为Icon 如题,市面上常见的方法是: var handle = bmp.GetHicon(); //得到图标句柄 return Icon.FromHandle(handle ...

  2. devres in linux driver

    写 driver 时, probe 中常常要为设备分配一些资源, 如 内存 / irq / gpio / iomap 等. 而在 probe 中失败时又要小心的释放掉这些资源. 底层驱动开发人员可能会 ...

  3. windows内存管理的机制以及优缺点

    分页存储管理基本思想:用户程序的地址空间被划分成若干固定大小的区域,称为“页”,相应地,内存空间分成若干个物理块,页和块的大小相等.可将用户程序的任一页放在内存的任一块中,实现了离散分配. 分段存储管 ...

  4. Boost中的Timer的使用——计算时间流逝

    使用Boost中的Timer库计算程序的运行时间 程序开发人员都会面临一个共同的问题,即写出高质量的代码完毕特定的功能.评价代码质量的一个重要标准就是算法的运行效率,也就是算法的运行时间.为了可靠的提 ...

  5. 导入项目 R.java没有

    网上一搜,各种 Android tools-fix your porject或者Clean ...不好使 其实可能是由于XML布局文件有错误导致,修改掉这些错误就可以了..

  6. oracle经典建表语句--scott建表

    create table EMP ( EMPNO ) PRIMARY KEY, ENAME ), JOB ), MGR ), HIREDATE DATE, SAL ,), COMM ,), DEPNO ...

  7. ubuntu12.04安装tftp,配置,修改目录,错误类型

    [前言]学习嵌入式,需要配置tftp服务,在网上搜了搜,很多,但是配置了,我的老是出现Error code 1: File not found错误,经过探索和一个大哥的博客http://blog.cs ...

  8. The android gradle plugin version 2.3.0-beta2 is too old, please update to the latest version.

    编译项目的时候,报如下错误: Error:(, ) A problem occurred evaluating project ':app'. > Failed to apply plugin ...

  9. caioj1097: [视频]树状数组1(快速求和计算) cdq分治入门

    这题虽然是个树状数组,但是也可以用cdq分治做啊~~,这个就是一个浅显的二维偏序的应用? cdq分治和普通的分治有什么区别? 举个栗子:有4个小朋友,你请他们吃饭,假如你分治搞,就会分成很多子问题—— ...

  10. Webdriver中关于driver.navigate().to()和driver.get()使用的区别

    先是有一个父页上button弹开一个子页,总共有4个子页,必须前一个页上的必填信息录完,才能在这个页面触发下一个子页. 用driver.navigate().to(baseUrl2),直接跳转到第2个 ...