AJPFX编写cmd界面下一键编译、执行java代码的bat脚本
此脚本适合刚接触java的同学,在cmd界面下用jc取代 复杂的 javac *.java + java main使用说明:
把脚本内容复制到txt文本中,修改后缀名为.bat,运行一次即可完成配置,以后在cmd界面下输入 jc 即可完成编译+执行
功能:1.将当前目录下的java文件编译并执行
如遇多个主函数的java文件是,会提示并选择执行
bat代码如下,
- @echo off
- if not exist %SystemRoot%\system32\choice.exe echo 抱歉,系统缺少程序运行必须组件,无法继续&pause>nul&exit /b 1
- if not exist %SystemRoot%\jc.bat copy %0 %SystemRoot%\jc.bat 1>nul 2>nul & echo 配置成功,使用方法 jc &pause>nul&exit /b 0
- rem 制作时间2015年10月23日 xin3283@qq.com
- rem 用途:将当前目录下的java文件编译并执行
- set jclog=%temp%\javac.log
- if exist %jclog% 1 0>%jclog% 2>nul
- javac *.java 2>%jclog%
- (for /f "skip=6 tokens=2 delims=个文件 " %%i in ('dir /-c %jclog%') do @echo %%i|findstr /v "目录") >%temp%\jcSize.txt
- set /p size=<%temp%\jcSize.txt
- if not "%size%"=="0" (
- type %jclog%
- exit /b 1
- )
- setlocal enabledelayedexpansion
- set /a MainSum=1
- for %%a in (*.java) do (
- type %%a|findstr /i "main" && ( set main!MainSum!=%%a & set /a MainSum=MainSum+1)
- )>nul
- set /a MainSum=MainSum-1
- for /l %%a in (1,1,%MainSum%) do (
- set main%%a=!main%%a:~0,-6!
- )
- if "%MainSum%"=="0" (
- echo 错误: 找不到或无法加载主类,请检查Main函数
- exit /b 2
- ) else if "%MainSum%"=="1" (
- java %main1%
- exit /b 0
- )
- echo 存在以下主函数,选择
- for /l %%i in (1,1,%MainSum%) do echo %%i:!main%%i!.java
- choice /c 123456789 /n
- java !main%errorlevel%!
- exit /b 0
AJPFX编写cmd界面下一键编译、执行java代码的bat脚本的更多相关文章
- 页面上动态编译及执行java代码
本文地址:http://www.cnblogs.com/liaoyu/p/real-time-compile-and-run-java-code-web-app.html 最近看到同事在页面上编译和执 ...
- bat脚本:Java一键编译(Javac java)
bat脚本:Java一键编译(Javac java) D: 是指D盘 javat是要编译的.java文件所在的文件夹 也就是D:\javat bat代码: :start COLOR 0A cls ...
- 在执行java代码时,设置了断点,然后莫名的没执行完方法内的代码就结束了,此刻一般在出错处代码用try,catch包括起来
在执行java代码时,设置了断点,然后莫名的没执行完方法内的代码就结束了,此刻一般在出错处代码用try,catch包括起来就能看到是什么异常了,记住try,catch语句的作用
- TeamCity编译执行selenium上传窗口脚本缺陷
2015-07-04 18:05 编写本文 TeamCity编译selenium脚本,对于上传窗口处理只支持sendKeys的使用,不支持模拟人为按下Enter键和使用autoIt等操作,即使本地调试 ...
- MAC 系统下使用 Sublime Text 2 直接编译运行 java 代码
本文参考了网上很多文章,就不一一列出了. sublime的版本是 sublime test 2 jdk版本 jdk1.7 1. mac下貌似直接就可以运行javac 和 java命令的,如果不能直接运 ...
- JAVA_HOME path classpath 以及cmd编译运行java代码
JAVA_HOME PATH CLASSPATH 三者的区别:安装完jdk之后,首先在环境变量里面添加JAVA_HOME ,例如安装路径为C:\Program Files\Java\jdk1.6.0_ ...
- 命令行编译执行java
命令行编译运行java程序 使用命令 javac进行编译 和 java进行执行. javac 后面跟着的是java文件的文件名,例如 HelloWorld.java. 该命令用于将 java 源文件编 ...
- [Unity] 编辑器运行中动态编译执行C#代码
(一)问题 之前写Lua时,修改完代码 reload 就可以热重载代码,调试起来十分方便(重构则十分痛苦). 现在使用 C# 做开发,目前还没找到比较方便地进行热重载的方式.只能退而求其次,在调试上找 ...
- Android平台下使用lua调用Java代码经验总结
动态语言以其执行的灵活性,可配置性.方便调试能够为开发带来极大的方便.假设用好了.能够极大的提高开发的效率. 怪不得像游戏开发这样复杂的软件开发里没有不集成脚本语言的. 当中,lua以其小巧,灵活.方 ...
随机推荐
- 【转】PLSQL_标准删除的方式Delete/Drop/Truncate区别和比较
- Android第一个个人APP(帐号助手)
第一个app上线了,关于帐号保存的一个app.本地保存,无须联网. 下载地址为:http://android.myapp.com/myapp/detail.htm?apkName=com.weeky. ...
- 【CODEFORCES】 C. Dreamoon and Strings
C. Dreamoon and Strings time limit per test 1 second memory limit per test 256 megabytes input stand ...
- HDU 4277 USACO ORZ(暴力+双向枚举)
USACO ORZ Time Limit: 5000/1500 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total ...
- 51NOD 1821 最优集合 栈
1821 最优集合 一个集合S的优美值定义为:最大的x,满足对于任意i∈[1,x],都存在一个S的子集S',使得S'中元素之和为i. 给定n个集合,对于每一次询问,指定一个集合S1和一个集合S2, ...
- 我要开启vue2新征程。
最近我们Team接到一个新项目,给财务部开发一个内部用的结算系统. 我想了想,心里这个兴奋啊(内部系统诶,可以大胆一点的用vue2了...) 又多了一个能练手的项目,之前的卡爷就是太坑爹了...明明v ...
- idea导出配置
- lua 与C通过c api传递table
此文转自http://blog.csdn.net/perfect2011/article/details/19200511(感谢...) 首先了解下c++与lua之间的通信: 假设在一个lua文件中有 ...
- hdu4786 Fibonacci Tree (最小生成树)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4786 题意:给定图的n个点和m条双向边,告诉你每条边的权值.权值为1表示该边是白边,权值为0表示该边为 ...
- Jquery 之deferred
一.概述 在jquery中有种对象称之为延时对象,可以由 http请求方法$.get(), $.ajax(), $.post() 产生, 内置方法如下 也可以有jquery的延时方法 $.when( ...