EDITPLUS配置java的问题
在网上搜索了很久,找到的都是设置环境变量问题无法解决,我的硬盘插在某台电脑上,要想方便编译运行java程序,
还得设置环境变量,造成了很多不便,所以自己用C写了个程序用来方便运行javac.exe和java.exe
但是不知道为什么,调用javac.exe编译的时候,很慢,不知道是程序有问题还是什么问题?
代码如下,我想大家应该能看懂C的程序的!!!
程序代码:
<br>#include <stdlib.h><br>#include <Windows.h><br>#include <Winbase.h></P>
<P>void ToRoot(char* dir) //根据路径获取根目录<br>{<br> for(unsigned i=0;i<strlen(dir);i++)<br> if(dir[i]=='\\')<br> {<br> dir[i]=0;<br> return;<br> }<br>}</P>
<P>void SetClassPathEnv(char *buf , unsigned size) //设置ClassPath环境变量<br>{<br> memset(buf,0,200);<br> strcpy(buf,"CLASSPATH=.;");<br> strcat(buf,getenv("java_home"));<br> strcat(buf,"<A>\\bin</A>;");<br> strcat(buf,getenv("java_home"));<br> strcat(buf,"<A>\\jre\\lib</A>;");<br> putenv(buf);<br>}</P>
<P>void SetPathEnv(char *buf,unsigned size) //设置Path环境变量<br>{<br> memset(buf,0,size);<br> strcpy(buf,"PATH=");<br> strcat(buf,getenv("java_home"));<br> strcat(buf,"<A>\\bin</A>;");<br> strcat(buf,getenv("java_home"));<br> strcat(buf,"<A>\\lib</A>;");<br> strcat(buf,getenv("java_home"));<br> strcat(buf,"<A>\\jre\\lib</A>;");<br> strcat(buf,getenv("PATH"));<br> putenv(buf);<br>}</P>
<P>void SetJavaEnv() //设置java所需环境变量<br>{<br> const unsigned max=500;<br> char dir[50];<br> GetCurrentDirectory(50,dir);<br> ToRoot(dir);<br> strcat(dir,"<A>\\Software\\JDK</A>"); //因为我的jdk目录是放在我的移动硬盘的X:\SoftWare下的<br> char buf[max]={0};<br> strcpy(buf,"JAVA_HOME=");<br> strcat(buf,dir); <br> putenv(buf);<br> SetClassPathEnv(buf,max);<br> SetPathEnv(buf,max);<br>}</P>
<P>//------------------------------------------------------<br>//两个main用来编写两个程序,都用到上面SetJavaPath()的方法<br>//------------------------------------------------------<br><br>//javac编译<br>int main(unsigned argn,char *args[])<br>{<br> if(argn==1)<br> return -1;<br> SetJavaEnv();<br> char cmd[100]={0};<br> strcpy(cmd,"javac ");<br> strcat(cmd,args[1]); <br> system(cmd);<br> return 0;<br>}<br>//====================================================<br>//java运行<br>int main(unsigned argn,char *args[])<br>{<br> if(argn==1)<br> return -1;<br> SetJavaEnv();<br> char cmd[100]={0};<br> strcpy(cmd,"java "); <br> for(unsigned i=1;i<argn;i++)<br> {<br> strcat(cmd,args[i]);<br> strcat(cmd," ");<br> }<br> system(cmd);<br> return 0;<br>}
[此贴子已经被作者于2007-4-6 11:34:59编辑过]





2007-4-6 11:08
