Topic: 如何通过程序截取class被编译的时间? |
Print this page |
1.如何通过程序截取class被编译的时间? | Copy to clipboard |
Posted by: jfml Posted on: 2003-06-25 11:04 谢谢指点 请不要告诉我去看文件的创建时间哦 我的意思是在A。java中加如一段代码 当A被编译成class后 可以取得被编译的时间 |
2.Re:如何通过程序截取class被编译的时间? [Re: CrazyJavar] | Copy to clipboard |
Posted by: dog72 Posted on: 2003-06-25 17:47 自己写预编译程序 |
3.Re:如何通过程序截取class被编译的时间? [Re: dog72] | Copy to clipboard |
Posted by: 1255 Posted on: 2003-06-26 08:06 dog72 wrote: 什麽意思 如何实作 可以给个例子吗 |
4.Re:如何通过程序截取class被编译的时间? [Re: CrazyJavar] | Copy to clipboard |
Posted by: jfml Posted on: 2003-06-26 09:23 就是,示范一下OK? |
5.例子:类的定义 [Re: CrazyJavar] | Copy to clipboard |
Posted by: dog72 Posted on: 2003-06-26 09:38 Class A { public static final long COMPILE_DATE = #CURRENT_DATETIME; } |
6.例子:预编译(伪代码) [Re: CrazyJavar] | Copy to clipboard |
Posted by: dog72 Posted on: 2003-06-26 09:44 Class CL 重载Javac中读源程序部分 { if(line.indexOf("#CURRENT_DATETIME") != -1) 替换为new Date().getXXX(); } 当然你可以定义其他的宏 |
7.Re:如何通过程序截取class被编译的时间? [Re: CrazyJavar] | Copy to clipboard |
Posted by: jfml Posted on: 2003-06-26 10:08 请恕小弟孤陋寡闻,您 这句 public static final long COMPILE_DATE = #CURRENT_DATETIME; 根本不会编译通过啊 另外,是否可以给一个完整的sample,小点无妨 非常感谢您的指点 |
8.Re:如何通过程序截取class被编译的时间? [Re: CrazyJavar] | Copy to clipboard |
Posted by: dog72 Posted on: 2003-06-26 10:34 当然编译不过去,所以要"预编译",你用过C/C++吗?在编译之前对源程序作预处理,替换一些宏。 因为你的需求正常的Java编译器是不支持的,所以你要改造编译器,除非你改变需求,否则这个预编译是不可避免的,自古华山一条路呀! |
9.Re:如何通过程序截取class被编译的时间? [Re: dog72] | Copy to clipboard |
Posted by: dapan Posted on: 2003-06-26 10:40 以前偶们用Perl做预编译,因为Perl的正则做的很好。 ^_^ |
10.Re:如何通过程序截取class被编译的时间? [Re: CrazyJavar] | Copy to clipboard |
Posted by: jfml Posted on: 2003-06-26 11:30 谢谢指点 不过我觉得为何Java不把编译的时间记录到class内部呢? |
11.Re:如何通过程序截取class被编译的时间? [Re: CrazyJavar] | Copy to clipboard |
Posted by: dog72 Posted on: 2003-06-26 11:48 因为这不是普遍需求 |
12.Re:如何通过程序截取class被编译的时间? [Re: CrazyJavar] | Copy to clipboard |
Posted by: zhongyijie Posted on: 2003-07-24 10:58 何必这么麻烦,另外写一个程序调用编译器,同时记录时间不就结了嘛? |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |