当前位置:首页 » 编程软件 » jdk11预编译java脚本

jdk11预编译java脚本

发布时间: 2022-07-08 05:50:54

A. JDK如何编译java文件 !急!!

你可以再eclipse下编辑java程序,就免去了很多麻烦.
这个Eclipse可以用下面三个文件合成:
1,Eclipse SDK压缩文件: "eclipse-SDK-3.2.2-win32",
2,EMF压缩文件:"emf-sdo-SDK-2.2.2"
3,GEF压缩文件:"GEF-ALL-3.2.2"
网络一下这3个文件名,就可以找到下载的地方,然后把这3个文件解压到同一个文件夹(解压显示替代的话选择'全部选否'),就可以了,然后运行eclipse就可以编辑Java程序了.

B. jdk中提供了什么方法对java类文件进行编译

importjava.lang.reflect.Method;
importjava.net.URL;
importjava.net.URLClassLoader;

importjavax.tools.JavaCompiler;
importjavax.tools.ToolProvider;

publicclassDemo01{

publicstaticvoidmain(String[]args)throwsException{

JavaCompilercompiler=ToolProvider.getSystemJavaCompiler();

intresult=compiler.run(null,null,null,"C:/source/HelloWorld.java");

System.out.println(result==0?"编译成功":"编译失败");

URL[]urls=newURL[]{newURL("file:/"+"C:/source/")};

URLClassLoaderclassLoader=newURLClassLoader(urls);

Class<?>clazz=classLoader.loadClass("HelloWorld");

//调用main方法
Methodm=clazz.getMethod("main",String[].class);

m.invoke(null,(Object)newString[]{});

}

}

上述代码会将c盘目录下的HelloWorld.java文件编译成HelloWorld.class文件,并将其加载到JVM虚拟机中,调用main方法将其执行

C. jdk11已经没有jre了吗centos安装jdk11,没有jre,启动tomcat导致无法找到jre,启动报错

原因是找不到jre,因为jdk11中没有jre,

办法1: 使用jlink生成jre;

办法2: 指定jre位置, 配置如下:

#/etc/profile文件末添加如下,解决jre找不到的问题
JAVA_HOME=/usr/app/jdk-11.0.1/#这个就配置你jdk的位置
JRE_HOME=$JAVA_HOME#指定jre位置
CLASSPATH=$JAVA_HOME/lib
PATH=$JRE_HOME/bin:$JAVA_HOME/bin:$PATH
exportPATHJAVA_HOMECLASSPATH

办法3: 你也可以选择使用jetty,jetty不依赖jre.

原文链接网页链接

D. 如何用JDK编译JAVA程序

1 你把文件名拼错了,java对大小写是敏感的。打错了当然找不到文件。
2 虚拟机没有找到必须的类库。你可能没有在autoexec.bat文件中设置classpath。进入windows的运行,输入sysedit,然后在autoexec.bat文件中加入这么一行:
set classpath=你的jdk的安装目录/lib; 例如set classpath=c:/jdk1.3.0_02/lib;
保存退出后,你要在dos窗口的c根目录下执行一遍autoexec.bat文件已保证被设置了,当然,如果你愿意也可以重启机器。

E. 编写和运行Java程序的步骤是什么每一步的结果是什么在JDK中,Java语言的编译命令是什么急需答案啊。

步骤:1、编写java源文件:可用记事本等相关的文本文档写源代码,也可使用java开发集成环境,如:JCreator LE JCreator pro eclipse Myeclipse 等相关的集成开发工具。

2、编译java源文件生成class文件:手写的源文件(即不使用开发工具所写的),在DOS中使用javac 完整的java源文件命来编译使其生成class文件。注意:写源文件时,一定要注意存档。修改源文件也是一样需要存档。

3、运行class文件:在dos中输入所写的源文件名字(不需要写后缀名-即.class 严格区分大小写 编译不需要区分大小写)。

如使用开发工具所写:请参照相对应的手册来点击开发工具中的按钮来编译运行。
java语言的编译命令就是javac 在dos中输入javac可见到这个命令的详细介绍。其他命令也是一样。至于每一步的结果是什么,在dos中运行请关注dos运行后的变化。在开发工具中运行请关注开发工具中的改变。不同的程序会产生不同的结果。如:
public class Hello
{
public static void main(String[] args)
{
System.out.println("Hello java");
}
}
这段代码,在dos中运行后会出现hello java这句话。用开发工具所写 ,请关注开发工具的界面。

以上内容纯属手打--panzer。希望对你有所帮助。如有疑问:开eml我:[email protected]

F. JDK编译.java脚本,执行.class

你环境变量有没有配置好呢 程序没错 肯定是环境变量配置的有问题 看下你的classpath

G. 如何用JDK编译JAVA程序

JAVA版hello world全攻略侯光敏 看到很多技术网站的BBS上面充斥着java初学者的关于运行第一个java程序的求助信息,我觉得作为过来人很有写这篇文章的必要,因为他们遇到的都是些很低级的问题,但是让这些问题占据bbs上那么多宝贵的空间就太不应该了。 要搞清楚的基本概念 java是一种跨平台的网络语言,为了能够在不同平台上运行,它使用了虚拟机这个概念。后缀名为java的文件是源代码文件,它经过编译后生成的是class文件。虚拟机执行的就是这些class文件,将它们转化成为不同平台能够运行的命令。这就是为什么java的效率比较低的原因。也是因为这个原因,在java里没有其它语言的使用者熟悉的exe文件的概念。 执行hello world的方法 切记:在命令行中输入 javac 源文件名.java (编译) java 源文件名 (执行,没有后缀) 这里说的是java application,里面包括main函数。 如果hello world是applet版的,在命令行中输入appletviewer 源文件名 (已经编译后的class文件) 如果class文件已经嵌入了html网页中,直接用IE打开就行了。 application经常出现的错误 系统提示Exception in thread "main " java.lang.NoClassDefFoundError。出现这个提示的原因可能有: 1 你把文件名拼错了,java对大小写是敏感的。打错了当然找不到文件。 2 虚拟机没有找到必须的类库。你可能没有在autoexec.bat文件中设置classpath。进入windows的运行,输入sysedit,然后在autoexec.bat文件中加入这么一行:set classpath=你的jdk的安装目录/lib; 例如set classpath=c:/jdk1.3.0_02/lib; 保存退出后,你要在dos窗口的c根目录下执行一遍autoexec.bat文件已保证被设置了,当然,如果你愿意也可以重启机器。 系统提示HelloWorld.java:1: Public class helloworld must be defined in a file called "HelloWorld.java ". public class helloworld{^ 一个Java源程序中可以定义多个类,但是,具有public 属性的类只能有一个,而且要与文件名相一致。还有,main方法一定要放在这个public 的类之中,这样才能运行这个类。 系统提示Exception in thread "main " java.lang.NoSuchMethodError: main 出现这个异常是因为你在抄书上的代码时抄错了。主函数一定要这么写:public static void main(String args[]) 一个字都不能错,切记!!! applet常出现的错误 IE显示applet已经启动,但是还是只显示灰色的一块。这种问题在使用jBuilder等集成开发工具是最容易出现,用appletviewer就没有问题。这是因为你在applet中使用了IE不支持的java版本。jBuilder在做applet是默认使用了swing组件,但是IE只支持jdk1.1,所以造成了这种情况。只要把导入swing的语句去掉就行了,然后按照提示修改一下代码,不要用swing组件的方法。如果你觉得swing组件很漂亮,打死都要用,那么就装一个java的plug-in这个东西在你装jdk的高版本时就自动装上了。看看你的控制面版中有没有那个红鼻子的小东西。但是切记,如果你要用它,那么你的html的文件的写法就和从前不一样了,不能简单的用CODE来指明类了。至于怎么写,不在这篇文章的讨论范围内了(你写一个hello world还要用plug-in就搞大了)。网上有很多文章讲怎么写。 用惯了点击就执行的的exe文件自然就很不习惯打开dos窗口输入命令行,你可以把它做成jar文件,但是对hello world来说有点麻烦,有个简单的傻办法:自己做一个批处理文件。例如:用记事本写一个run.txt文件,内容是:java 你的主文件名 ,然后把后缀改成bat存到和主文件相同的目录下。呵呵,双击就运行了,够傻吧。 如果你非要用exe文件运行,jet等工具可以把class文件做成exe文件。但是这样也失去了java的跨平台性。 以上就是hello world的全攻略了,如果你还看不到hello world,我倒!你还是别学java了。

H. Java11的新功能有哪些

Java 11 JDK中已计划的新功能
目前来看,JDK 11已有九个已经确认的新功能,而且还有更多新功能仍在考虑之中。计划的新功能包括:
HTTP客户端(标准),这个功能于JDK 9中引入并在JDK 10中得到了更新,现在终于转正了。该API通过CompleteableFutures提供非阻塞请求和响应语义,可以联合使用以触发相应的动作。自从JDK 9和10中引入该功能后,JDK 11完全重写了该功能,现在其实现完全是异步的。RX Flow的概念也得到了实现,这样就无需为了支持HTTP/2而创造许多概念了。现在,在用户层请求发布者和响应发布者与底层套接字之间追踪数据流更容易了。这降低了复杂性,并最大程度上提高了HTTP/1和HTTP/2之间的重用的可能性。Epsilon垃圾回收器,被称为“no-op”回收器,它仅负责内存分配,却没有实现任何实际的内存回收机制。Epsilon回收器可以用于性能测试、内存压力测试和虚拟机接口。它还可以用于短生命周期的任务。lambda参数的局部变量语法,可以消除隐含类型表达式中正式参数定义的语法与局部变量定义语法的不一致。这样就能在隐含类型的lambda表达式中定义正式参数时使用var了。Java的类文件格式将被扩展,以支持新的常量池,CONSTANT_Dynamic。其目标是降低开发新形式的可实现类文件约束带来的成本和干扰。采用Curve25519和Curve448加密的密钥交换比现有的Diffie-Hellman椭圆曲线密钥交换方式更有效、更安全。根据IETF的资料,Curve25519和Curve448两种椭圆曲线采用常量时间的实现方式,以及不会发生异常的数乘实现,能更好地抵抗各种旁路攻击,包括时序攻击、缓存攻击等。该提案的目标是为密钥交换方法提供一个API和实现,同时开发一个平台无关、纯Java的的实现。由于该提案采用了复杂且精密的模算数,因此还是有风险的。飞行记录仪(Flight Recorder)将提供低开销的数据收集框架,用来调试Java应用程序和HotSpot JVM。飞行记录仪是Oracle的商业版JDK的功能,但在JDK 11中,其代码将移动到公开代码库中,这样所有人都能使用该功能了。Iclouded将作为API,以事件的形式产生或消耗数据,同时提供缓存机制、二进制数据工具,同时支持配置和事件过滤。该提案还提议为OS、HotSpot和JDK库提供事件。更新platform API以支持Unicode版本10.0,从而使Java跟上潮流。预计以下的类将支持:lang包中的Character和Stringawt.font包中的NumericShapertext包中的Bidi、BreakIterator和Normalizer实现ChaCha20和Poly1305加密算法。ChaCha20是种相对较新的流加密算法,能代替旧的、不安全的R4流加密。ChaCha20将与Poly1305认证算法配对使用。ChaCha20和ChaCha20-Poly1305加密实现将通过crypto.CipherSpi API于SunJCE(Java加密扩展)中提供。增强Java启动器,使之能够运行单一文件的Java源代码,使得应用程序可以直接从源代码运行。单文件程序常见于小型工具,或开发者初学Java时使用。而且,单一源代码文件有可能会编译成多个类文件,这会增加打包开销。由于这些原因,在运行程序之前进行编译,已成为了不必要的步骤。Java JDK 11仍在开发中的新功能
Java 11的创建者们还在考虑几个对JDK 11的变更或新功能的提案:
给Java添加raw字符串字面值。这样可以更容易地以人类可阅读的形式书写字符序列,而无需特殊的Java标记。这样也能更容易地将非Java语法的字符串提供给Java使用,还能支持多行字符串,而无需使用特殊的标记。扩展switch语句,使之能作为语句或表达式使用。这样还能改进switch处理null值的方式。这些改动可以简化编程,同时为switch支持模式匹配做准备。嵌套的访问控制,对应于Java当前的嵌套类型。嵌套可以让逻辑上属于同一代码实体但被编译到不同的类文件中的类互相访问对方的私有成员,而无需让编译器插入扩大访问权限的方法。JDK 11删除的功能
Java EE和CORBA模块从Java SE9就成了不推荐使用(deprecated),并计划在未来的版本中删除。这个未来版本就是JDK 11。
Java SE 6于2006年12越发布,它为Java EE平台提供了整套的Web服务技术栈:JAX-WS(Java API for XML-based Web Services),JAXB(Java Architecture for XML Binding),JAF(JavaBeans Activation Framework),以及Common Annotations for Java。这些年来,Java EE版本在不断进化,这给Java SE造成了许多麻烦,例如加入与Java SE无关的技术,以及同时维护两个Java版本的困难变得更大。由于独立的Java EE版本由第三方网站提供,Oracle说Java SE或JDK中已经没有必要提供Java EE了。
当然,一些依赖于JDK中的Java EE API及工具的应用程序将无法编译或运行。将JDK 6、7或8移植到新版本时将会产生二进制不兼容和源代码不兼容。Oracle说,受到这些影响的开发者可以部署相应的Java EE版本。
CORBA来自于二十世纪九十年代,Oracle说,现在用CORBA开发现代Java应用程序已经没有意义了,维护CORBA的成本已经超过了保留它带来的好处。
但是删除CORBA将使得那些依赖于JDK提供部分CORBA API的CORBA实现无法运行。目前还没有第三方CORBA版本,也不确定是否会有第三方愿意接手CORBA API的维护工作。
JavaFX已经被移除,因此已经与Java JDK每年两次的更新无关。

I. 安装JDK后怎么编译运行JAVA程序

如果你的图片没发错的话那么你出现的问题就太粗心了
你编译的文件是hello.java
javac hello.java //产生hello.class文件
而你解释的文件是WelcometoJava.class
java WelcometoJava //你并没有编译WelcometoJava,说以不会产生WelcometoJava.class

顺便解释一下,一个文件不编译是无法直接执行的。
所以dos报错找不到WelcometoJava这个类
你只需这么改就行了
在dos界面
javac WelcometoJava.java //成功后生成WelcometoJava.class文件
java WelcometoJava

另外记得文件名要和public的类名一致

热点内容
传奇编译完整部署教程 发布:2025-02-09 12:03:39 浏览:830
vivo手机微信聊天记录在哪个文件夹 发布:2025-02-09 11:55:24 浏览:839
数控内孔循环编程实例 发布:2025-02-09 11:51:41 浏览:762
工作站玩游戏买什么配置的电脑 发布:2025-02-09 11:49:34 浏览:773
奶块透视脚本群 发布:2025-02-09 11:44:18 浏览:544
敢死连狙击手之无名高地ftp 发布:2025-02-09 11:27:21 浏览:584
lol天使辅助脚本 发布:2025-02-09 11:24:39 浏览:140
溯源码怎么生成 发布:2025-02-09 11:15:15 浏览:443
android70flash 发布:2025-02-09 11:15:06 浏览:726
如何查看服务器拒绝信息 发布:2025-02-09 11:13:07 浏览:947