java makefile jar包_java makefile学习实践(编译的javac命令写在makefile中,运行命令java写在shell脚本中)...
学习makefile教程,ubuntu中文网
1.写一个简单的java项目,不需要外部jar,用的简单的
importjava.util.ArrayList;是可以从CLASSPATH环境变量中找到的,在javac阶段不需要特殊添加-cp
hellocat
Hellocat.java
importjava.util.ArrayList;importjava.util.Iterator;public classHellocat{public static voidmain(String[] args){
ArrayList list1= newArrayList();
list1.add("one");
list1.add("two");
System.out.println("" + list1.size()+ "个元素");
System.out.println("");
Cat mike= newCat();
mike.run();
System.out.println(mike.name+ "is running over\n");
}
}
Cat.java
public classCat{
Cat()
{this.name = "wali";this.age = 2;
}public voidrun()
{
System.out.println("run run run\n");
}publicString name;public intage;
}
makefile
result : Hellocat.java Cat.java
javac Hellocat.java
clean :
rm-f Hellocat.class Cat.class
执行的时候还得输入java Hellocat,这个项目比较小无所谓,如果遇到大的项目,各种package,需要调整包目录,尤其是需要引入外部jar的,java运行命令需要指出-cp位置
2.比较大的项目,需要引入外部jar(netty4.1.25)
代码不方便展示,主要有两个主类,HelloWorldClient和HelloWorldServer
makefile:
SRCFILES := $(wildcard *.java)
CFLAGS := -cp /home/kourui/netty4125/netty-4.1.25.Final/jar/all-in-one/netty-all-4.1.25.Final.jar
result : $(SRCFILES)
javac $(CFLAGS) HelloWorldServer.java ServerChannelInitializer.java ServerHandler.java
javac $(CFLAGS) HelloWorldClient.java ClientChannelInitializer.java ClientHandler.java
clean :
rm-f *.class
运行脚本:
startserver:(pwd可以忽略,当时是提示用的)
#!/bin/bash
#this script avaiable for starting server
pwd
java -cp ..:/home/kourui/netty4125/netty-4.1.25.Final/jar/all-in-one/netty-all-4.1.25.Final.jar pkg.HelloWorldServer
startclient:
#!/bin/bash
#thisscript starts client
pwd
java-classpath /home/kourui/jmaketest/hellocs:/home/kourui/netty4125/netty-4.1.25.Final/jar/all-in-one/netty-all-4.1.25.Final.jar pkg.HelloWorldClient
这样运行时直接通过命令:
./startserver
./startclient
就方便了许多
java makefile jar包_java makefile学习实践(编译的javac命令写在makefile中,运行命令java写在shell脚本中)...相关推荐
- java 扫描jar包_java 扫描指定包(包括jar包)
/*未经本人同意,禁止转载. 做工程时,有时候需要扫描指定包,或者指定jar包,甚至扫描指定包下指定类,本文章详细讲解如何扫描,以及智能扫描,小编讲的很详细了仔细看. 以下讲解, 包扫描和jar包扫描 ...
- java 引用 jar包_java命令行引用jar包的方法
java命令行引用jar包的方法 java命令行怎么引用jar包?jar包有哪些常用方法?下面跟yjbys小编一起来学习一下,希望对大家学习java语言有帮助! 一般情况下: 如果java 文件和ja ...
- java的jar包_Java关于jar包的知识详解
在学习jar包之前,要先弄懂Java包,以及关于Java包的相关概念. 一.包 为了更好地组织类,Java提供了包机制.包是类的容器,用于分隔类名空间.如果没有指定包名,所有的示例都属于一个默认的无名 ...
- java cglib jar包_Java面试题|反射必看的4道面试题
上三篇: 动力节点:Java面试题|多线程21道必看面试题zhuanlan.zhihu.com 动力节点:面试题|Java基础17道常见面试题zhuanlan.zhihu.com 动力节点:面试题 ...
- java access jar 包_java连接access 不用jar包
java连接access 不用jar包 有两种方法,1种要配置,1种是要驱动 你的这种写法是不用另加驱动的,但要配置 操作如下: 控制面板->管理工具->ODBC->系统DSN-&g ...
- ant java 外部jar包_java – 在使用Ant的新jar文件构建中包括外部jar文件
我只是"继承"一个Java项目,而不是来自Java背景,我有时失去一点. Eclipse用于在开发期间调试和运行应用程序.我已经通过Eclipse成功创建了一个.jar文件,'包括 ...
- php项目如何导jdbc包,JDBC-idea导入mysql连接java的jar包(mac)的方法
前言 1.本文使用的是mysql8.0版本 与5.0版本相比:导包方式相同,后面代码中的注册驱动方式不同 1.mac与pc的idea菜单和图标不是完全相同,但是步骤是差不多的 下载对应版本的jar包 ...
- java开发常用jar包_java开发常用jar包
mail.jar与activation.jar 里面包含了activation.jar和mail.jar两个包.通过里面的类的调用便可以达到发送电子邮件的目的 commons-beanutils.ja ...
- java -jar 停止_推荐:Linux启动Java程序jar包Shell脚本
每次启动Java程序jar包的时候,难道你还在手敲java -jar xxserver.jar--?边敲边想着都需要追加哪些参数? 今天就推荐给大家一个几乎通用的Shell脚本,它支持Java程序Ja ...
最新文章
- 影谱科技宣布完成13.6亿D轮融资 商汤软银等多家参与
- 物理主机安装linux的方法
- 原生js cookie本地存储
- java nio proactor_reactor模式与java nio
- (转)MySQL数据库的优化-运维架构师必会高薪技能,笔者近六年来一线城市工作实战经验...
- android常用组件之RadioGroup
- 戴尔微型计算机怎么换系统,给戴尔外星人笔记本电脑的win7系统更换为win10系统图文教程...
- oracle 日期格式化 修改_java学习笔记:时间日期类
- 【HDOJ】1504 Disk Tree
- 20169217 2016-2017-2 《网络攻防实践》第四周学习总结
- 服务器没有网卡驱动怎么看网卡型号,[怎么看网卡设备]怎么查看网卡驱动
- Linux下如何安装.deb文件
- 文字加下划线单选按钮效果,RadioGroup实现
- 【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(7):欧氏空间
- 第11期 DApp 榜单:这是一篇让DD君重伤住院的内容
- BGP(1):BGP 的基本机制
- onnx优化系列 - 获取中间Node的inference shape的方法
- Java中long类型直接赋值大数字的问题
- 服务器托管的作用,有哪些好处?
- java毕业设计餐饮掌上设备点餐系统Mybatis+系统+数据库+调试部署