不使用IDE编译和启动main方法

从开始学习语言,就使用IDE集成开发工具编写代码,一个按钮,就可以解决编译和运行的所有问题。其实开发工具编译、运行使用的就是JDK中的javac和java。我们也可以直接使用这些工具来编译和运行我们的代码,期间,根定会遇到很多有趣的问题,解决这些问题,有助于我们了解本质和提升能力。
 

解决javac编译错误:编码 GBK 的不可映射字符

在使用javac编译时,在编译文件前加上-encoding UTF-8

javac -encoding UTF-8 Operator.java

使用编译工具javac编译源文件时发生了问题:程序包XXX不存在;找不到符号,主要是类名和方法名找不到。

全限定类名:包名+类名,一个类的包名体现在操作系统中是对应的目录javac和java查找类都是根据全限定类名的

javac命令的使用方法

javac

:
-classpath (等同-cp)<路径> 指定查找用户类文件和注释处理程序的位置件所,默认当前目录,即命令运行时所在目录
-sourcepath <路径> 指定查找输入源文件的位置,默认当前目录,即命令运行时所在目录
-d <目录> 指定放置生成的类文件的位置,默认源文件所在位置


需要编译的源文件
 

总结
情况       解决方式
依赖自定义的类    在源文件根目录下运行命令 ,例如C:\Users\gzn\helloworld\src>javac com\company\app\MyApp.java
依赖自定义类和第三发jar包    在源文件目录下运行命令,使用classpath参数,使用默认sourcepath源文件路径,默认d编译输出路径,即当前路径,例如C:\Users\gzn\helloworld\src>javac -classpath .;C:\Users\gzn\helloworld\libs\algs4.jar com\company\app\MyApp.java
依赖自定义类和第三方包优化,最佳实践    在源文件目录下运行命令,使用classpath参数,使用sourcepath参数,使用d参数,例如C:\Users\gzn\helloworld>javac -sourcepath src -classpath out\classes;libs\algs4.jar -d out\classes src\com\company\app\MyApp.java
注:-d中目录必须先手动创建

java命令运行

java -classpath ".;c:\classpathjar\guava-31.0.1-jre.jar;" com.company.app.MyApp
 

你可能感兴趣的:(java,java,jvm,servlet)