- 浏览: 655652 次
- 性别:
- 来自: 成都
文章分类
- 全部博客 (170)
- Android (10)
- Java (35)
- PHP (3)
- Linux (3)
- Powerdesigner (2)
- dedcms (1)
- nginx (1)
- Flex (9)
- REST (2)
- Google App Engine (1)
- mysql (6)
- JAVA开源项目 (1)
- Eclipse (18)
- Eclipse Orion (1)
- Dojo (2)
- UML (1)
- Eclipse GEF EMF (4)
- Eclipse 插件开发 (6)
- OSGI (2)
- DeDeCMS (1)
- Maqetta (2)
- JavaScript (1)
- nginx php (1)
- Dojo V1.7 (2)
- Spring3 (4)
- Hibernate3 (4)
- MongoDB (3)
- Scala (2)
- DSL (1)
- Python (3)
- Maven (1)
- Tomcat (3)
- XMPP (2)
- Apache (4)
- NodeJS (1)
- SQLSERVER (2)
- HTML5 (1)
- Nexus (1)
- web服务器 (2)
- Jetty (2)
- weixin (1)
- ngrok (1)
- 网络与信息安全 (1)
最新评论
-
wangyudong:
配置有点晕,开源社区上找了一个开源的Holer,只需要设置Ac ...
用ngrok实现外网访问本地WEB项目的方法 -
lolo968:
你收集的资料没有链接
基于OSGI的框架开发小结(转) -
smartdog:
使用的maven的版本很老的,而且写的不是很清楚,建议可以参考 ...
Maven多项目依赖配置 -
Tom.X:
OSGi联盟官网:http://osgia.com
基于OSGI的框架开发小结(转) -
Miller003:
你好,我在本地测试时,删除catalina.jar和tomca ...
基于Tomcat7的HTML5 WebSocket 应用示例
1、在java程序中用JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();来获取编译器时,返回的值为NULL,经过在网上查找资料,都是jre惹的祸,
我们在装java环境时,通常会装两个,一个是jdk,一个是jre,其目录形式如下:
C:\Java-->jdk1.6.0_25
-->jre6
但是我们在eclipse或者myeclipse中开发应用程序的时候用到的是C:\Java-->jre6,但是这个下面没有编译器
在C:\Java-->jdk1.6.0_25目录下有一个jre文件夹,其内容和C:\Java-->jre6是一样的
此时我们把eclipse或者myeclipse中的jre换成C:\Java-->jdk1.6.0_25-->jre这个jre
在更改成功之后,会重新编译工程,在编译成功之后,运行程序,就可以获取到动态编译器了
2、
ToolProvider的源代码有如下一段:
private static final String[] defaultToolsLocation = { "lib", "tools.jar" };
privatestatic Class<?> findClass() throws MalformedURLException, ClassNotFoundException { try { return enableAsserts(Class.forName(defaultJavaCompilerName, false, null)); } catch (ClassNotFoundException e) { // ignored, try looking else where } File file = new File(System.getProperty("java.home")); if (file.getName().equalsIgnoreCase("jre")) file = file.getParentFile(); for (String name : defaultToolsLocation) file = new File(file, name); URL[] urls = {file.toURI().toURL()}; ClassLoader cl = URLClassLoader.newInstance(urls); cl.setPackageAssertionStatus("com.sun.tools.javac", true); return Class.forName(defaultJavaCompilerName, false, cl); }
发表评论
-
JVM系列三:JVM参数设置、分析(转)
2014-09-28 15:04 1084不管是YGC还是Full GC,GC过程中都会对导致程序运 ... -
Java中static、final用法小结 (转)
2012-08-26 10:51 1975一、final 1.final变量: ... -
java位操作符总结(转)
2012-08-17 11:16 1285以下是java位操作符的小总结,具体如下:二进制负数以它 ... -
Servlet生命周期与工作原理(转)
2012-08-14 16:57 1053Servlet生命周期与工作原理 Servle ... -
java堆与栈 java String分配内存空间(详解)转
2012-08-10 15:44 1287栈内存 堆内存 ... -
java类继承总结一 父类类型与子类类型之间的转化问题(转)
2012-08-06 21:13 8680java类继承总结一 父类类型与子类类型之间的转化问 ... -
java堆和栈小结(转)
2012-08-05 21:45 1055(1)JAVA中基本数据类型直 ... -
Java常见异常(Runtime Exception )小结--转
2012-08-02 21:04 1340Java常见异常(Runtime Exception ) ... -
java.lang.NoClassDefFoundError: org.objectweb.asm.Type
2012-06-03 15:27 2471在使用spring3的aop时,出现如下的错误: ja ... -
Bean named '*' must be of type [*], but was actually of type [$Proxy16]
2012-06-03 14:14 28356在用junit测试dao接口时,出现以下的错误 Caused ... -
saveOrUpdate is not valid without active transaction
2012-06-03 13:07 6857在使用Spring+Hibernate的框架时,在applic ... -
spring BeanCreationException confusion about mapping
2012-05-31 20:08 1378在进行spring3+rest配置时,出现了以下的错误: C ... -
如何获取新浪微博的登录参数
2012-05-23 20:32 77191、用Chrome的开发者工具或者Firefox的Firebu ... -
Java 程序中使用相对和绝对路径读取文件
2012-05-21 14:24 9154在Java中用File对象来创建文件时,绝对路径一般是不会出现 ... -
线程安全与线程不安全
2012-04-26 16:43 1219线程安全是针对多线程来讲的,如果所使用的公用变量在多线程 ... -
StringBuilder、StringBuffer和String的关系
2012-04-26 16:33 10081. String 类 S ... -
插件开发中如何正确使用第三方jar包
2012-04-21 20:48 2473在进行eclipse插件开发过程中,除了引用Eclipse本身 ... -
Errors running builder 'JavaScript Validator' on project '......'.
2012-04-21 20:36 31325在编译java工程时,如果出现 “Errors occu ... -
The method *** of type *** must override a superclass method
2012-04-21 20:34 1354如果在实现接口时,出现了“The metho *** o ... -
在线Base64编码
2012-03-13 09:22 1813最近需要使用icon转换成base64编码,搜寻到一下网站: ...
相关推荐
Java 1.8和1.6 API中文文档是开发者学习和使用Java编程语言的重要参考资料,它们详尽地列出了这两个版本中的所有类、接口、枚举和注解,以及它们的方法和属性。以下是对这两个版本API的主要知识点的详细说明: **...
JDK 1.6和1.8是两个重要的版本,它们在Java发展历程中扮演着关键角色。本篇文章将深入探讨这两个版本的主要特性和差异。 一、JDK 1.6 1. **增强的性能**:JDK 1.6着重提升了运行效率,包括垃圾收集器优化,提升了...
《深入解析Java1.6源码:CompileInMemory——完全在内存中编译源代码的实践》 在软件开发过程中,编译是必不可少的一环,它将人类可读的源代码转换为计算机可执行的字节码。Java 1.6引入了一种新的编译方式,名为...
Java开发工具包(Java Development Kit,简称JDK)是Java编程语言的核心组件,它包含了编译器、运行环境以及各种工具,使得开发者能够编写、测试和运行Java应用程序。本资源包含的是JDK 1.6和JDK 1.8的中文API文档,...
4. **动态代理**:通过java.lang.reflect.Proxy,可以在运行时创建代理对象,实现接口动态方法调用。 5. **NIO.2**(New IO 2):虽然在Java 7中正式引入,但Java 6的更新也为NIO的扩展打下了基础,增强了文件系统...
Java Compiler API是Java 1.6引入的新特性,允许开发者在运行时动态编译Java源代码。 在Java中,动态创建类操作可以分为以下几个步骤: 1. 创建Java源代码字符串 2. 使用Java Compiler API编译Java源代码 3. 加载...
JDK 1.6,也称为Java SE 6,是Java平台的一个重要版本,它包含了Java编译器、Java虚拟机(JVM)、Java类库以及开发者需要的各种工具。这个版本的JDK在2006年发布,对Java编程语言进行了许多改进和增强,以提升性能、...
它包括Java编译器、Java虚拟机(JVM)、Java类库以及各种开发工具,如Javadoc和JAR打包工具等。JDK的版本更新通常会引入新的特性和性能优化,以适应不断变化的软件开发需求。 **JDK 1.6关键特性:** 1. **泛型的...
JDK(Java Development Kit)是Java编程语言的核心组件,包含Java运行环境、编译器以及各种工具,用于开发和运行Java应用程序。API(Application Programming Interface)则是Java语言提供的接口集合,是开发者进行...
1. **javac**:这是Java编译器,用于将Java源代码编译成字节码文件(.class文件)。常用的命令行参数包括: - `-d`:指定生成的.class文件的存放位置。 - `-g`:生成调试信息。 - `-verbose`:输出更多的信息,...
Java编程经验分享 Java作为一种广泛使用的编程语言,其特点之一就是动态加载机制。...随着Java版本的更新,如从JDK 1.4到1.6,类加载机制等特性可能会有所变化,因此持续学习和跟踪最新技术动态是保持专业性的关键。
- 编译器在 JDK 1.6 中进行了大量优化,包括提前编译、内联优化等,显著提高了 Java 应用程序的启动速度和运行效率。 3. **Java Web 组件(JSR 223):** - JSR 223 是 Java Web 组件的一个规范,它为在 Java ...
**1.6 Java 开发环境** - **JDK**: Java Development Kit,包含了开发 Java 应用所需的所有工具和库。 - **JRE**: Java Runtime Environment,包含了运行 Java 应用所需的组件,包括 JVM 和标准类库。 - **JVM**: ...
1.5.2 Java编译器(Java Compiler) 17 1.5.3 Java类库(Java Class Libraries) 17 1.5.4 Java虚拟机(Java Virtual Machine) 17 1.5.5 HelloWorld的整个流程 17 1.6 小结:我们学会了编译和运行一个Java程序...
1.5.2 Java编译器(Java Compiler) 17 1.5.3 Java类库(Java Class Libraries) 17 1.5.4 Java虚拟机(Java Virtual Machine) 17 1.5.5 HelloWorld的整个流程 17 1.6 小结:我们学会了编译和运行一个Java程序...
2. **Java 8的元注解处理器**:Javac 1.6引入了注解处理器,Java 8进一步完善,使得注解处理更加灵活。 通过`AnnotationDemo`,你可以实践上述各种注解的使用,加深对Java和Android中注解的理解,并掌握如何利用...
- **JDK 1.6、1.7中的永久代(PermGen space)**:用于存放类元数据,可以通过`-XX:PermSize`和`-XX:MaxPermSize`来控制大小。 - **JDK 1.8及之后的元数据区(Metaspace)**:移到了堆外,不再受JVM堆大小的限制,但仍然...
**1.6 一个简单的Java Applet** - **定义**:Java Applet是一种在浏览器中运行的小程序。 - **创建过程**: 1. 编写Applet类,继承自`java.applet.Applet`。 2. 实现`paint`方法来绘制图形。 3. 编译并嵌入HTML...
Java默认初始化变量至零值,如对象初始化为`null`,数值类型初始化为`0`。重复初始化变量至默认值是不必要的,尤其是子类继承自父类时,所有构造函数都会被调用。理解并合理利用这一机制,可减少不必要的初始化步骤...
#### 1.6 Java语言的运行机制如何? Java 程序的运行机制主要包括以下几个步骤: 1. **编写源代码**:使用文本编辑器或其他 IDE 编写 Java 源代码。 2. **编译**:使用 JDK 中的 javac 编译器将源代码编译成字节码 ...