javac、classpath的编译和生成Maven工程

1.01_java源码和编译
用notepad++查看JavaA.java


image.png

在cmd中进入javaA.java所在的文件夹(例:javaA.java在C盘softwaredate的test的01_java源码和编译文件夹中)
在cmd中进行编译,即javac JavaA.java,运行后会发现在01_java源码和编译文件夹中多了JavaA.class


image.png

image.png

再在cmd中直接进行运行JavaA,即java JavaA(虚拟机中默认只会执行.class文件)


image.png

2.02_main方法
用notepad++查看JavaC.java


image.png

image.png

在cmd中进入javaC.java所在的文件夹(例:javaC.java在C盘softwaredate的test的02_main方法文件夹中)

在cmd中进行编译,即javac JavaC.java,运行后会发现在02_main方法文件夹中多了JavaA.class、JavaB.class和JavaC.class


image.png

为什么会出现3个.class?
因为在JavaC的代码中,使用到了main方法,在main方法中new了JavaA、JavaB和JavaC
3.03_package包路径
用notepad++查看"03_package包路径/com/pa"文件夹中的JavaA.java
image.png

通过JavaA.java的内容,可以发现,一开始有一个"package com.pa;"看到这个,就需要在com的上一层目录,进行编译
image.png

4.05_classpath

依然是用notepad++查看05_classpath文件夹,如下图所示,有3个工程
我们要在cmd中直接对Project3/com/pc下面的JavaC.java进行编译!
如果依然使用以前的方法,进入到工程下面直接进行编译的话,如图所示,直接报错,为什么呢?


image.png

因为在JavaC.java中我们需要导入其他工程下的JavaA和JavaB,所以正确的使用方法应该是:
image.png

classpath的编译:
javac -cp .;../Project1;../Project2; com/pc/JavaC.java
5.打jar包,及调用jar包编译执行
image.png

javac -cp .;../Project1.jar;../Project2.jar; com/pc/JavaC.java
//调用jar包内容编译

java -cp ,;../Project1.jar;../Project2.jar; com/pc/JavaC
//执行

jar -cvf Project4.jar .
打成jar的名字 当前目录
即在当前目录下打一个Project4.jar的jar包

6.通过maven 编译 部署
1)需要先配置maven的环境变量
在环境变量中配置一个MAVEN_HOME——C:\software\apache-maven-3.5.0


image.png

再去path中添加%MAVEN_HOME%\bin


image.png

2)进入到C:\softwaredate\test\07_maven\my-app中
image.png

mvn clean //清除项目target
mvn compile //编译源代码

mvn test-compile //编译测试代码
mvn test //执行测试
mvn package // 项目打包
mvn install // 在本地Repository中安装jar
mvn site //产生site
7.package包
生成maven模板工程

mvn archetype:generate -DgroupId=com.guoyasoft -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false


image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Maven编译代码的相关命令 第一、main目录下的主代码编写完毕后,使用Maven进行编译,在项目根目录下运行命...
    加油小杜阅读 1,289评论 0 2
  • jHipster - 微服务搭建 CC_简书[https://www.jianshu.com/u/be0d56c4...
    quanjj阅读 848评论 0 2
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,123评论 19 139
  • spring官方文档:http://docs.spring.io/spring/docs/current/spri...
    牛马风情阅读 1,768评论 0 3
  • 最近追剧,追的很愤懑,心疼小美,心疼的不得了。作为外企资深HR她的生活本来可以很小资的,结果遇到如此偏心的父母,什...
    莹仔陪你说晚安阅读 345评论 0 0