Java Maven项目的一些补充
写在前面
在多人开发团队中,规范是非常重要的。To explain it,就像是秦始皇统一货币、度量衡一样,主要的目的是为了降低项目技术架构差异所带来的交流成本,这样开发者就可以尽可能把注意力放在业务上。这些东西影响着我们每一个编码细节,even in 变量命名,日志格式等。
开发团队尽可能统一口径,在技术选型上符合公司统一思想:譬如Spring Boot项目,采用DB访问层统一使用MyBatis,SQL方式采用注解等;注册中心使用Eureka,服务间调用使用HTTP协议,编解码使用JSON等;对于异常的处理,进可能是统一异常格式,以异常类型区别或者是异常中携带的信息来区别等。这些都是开发架构需要考虑的事情。举个例子,某天我去查公司的别人负责的项目的异常,从何入手?因为微服务脚手架是统一的,我自然知道哪个路径下存着日志,顺着日志配合代码寻找异常,不需要因为各种不同项目结构(SSH,SSM,各种流派)而需要不停的去问项目负责人问题才能上手。
分享一些Tips
Java的依赖使用Maven非常的舒服,团队必须搭建一个Maven的私库,用于微服务的接口定义便于开发者之间引入。较之最原始的把jar导入到lib中的操作,Maven这个东西不仅干净而且高效,并且Maven也类似Java中的面向对象的思维,继承一个父项目,然后引入一些项目中需要的dependencies,就可以开始你的项目了!通常团队中都会有一个脚手架,里面包括了基本开发所需要的基本配件(jdk版本,编译器版本,通信编解码,包路径定义等)。
首先,我们要在你的IDEA中配置自己的Maven,that could be simple。
打开你的IDEA->Preferences->搜索maven

需要配置的是maven的包路径,maven的conf,以及maven仓库地址。
在配置中配置自己的私库地址

配置完maven,我们需要知道自己项目里面所引用的包,如果你想观察他们,IDEA非常的友好,将他们展示在了你项目结构的下方。

自己项目的module就在IDEA的右侧。

然后我们的maven依赖,主要靠你的pom文件的dependencies来引入依赖的。

一般的maven结构都是顶上是自己的maven打包后别人引入的标志,一般通过mvn install 或者 mvn deploy提供。dependencies是表示你项目引用的jar包,build里面包括了编译器配置和打包配置,决定了你mvn package的形态。
最后
收编一下以前的各种maven建项目。
Java Maven项目的一些补充的更多相关文章
- 【IDEA使用技巧】(4) —— IDEA 构建Java Maven项目、导入Eclipse项目、多Module Maven项目
1.IntelliJ IDEA构建Java Maven项目 1.1. IDEA构建Java Maven项目 ①选择Create New Project,选择创建Maven项目,并勾选Create fr ...
- Java Maven项目之Nexus私服搭建和版本管理应用
转载自:https://cloud.tencent.com/developer/article/1010603 1.Nexus介绍 Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓 ...
- IntelliJ IDEA 15开发Java Maven项目
1.安装好之后开始创建项目
- Redhat上为java Maven项目构建基于Jenkins + Github的持续集成环境
在Redhat enterprise 6.5 的服务器上,为在gutub 上的 java mvaen项目构建一个持续集成环境,用到了Jenkins.因公司的服务器在内网,访问外网时要通过代理,所以为m ...
- java maven项目 pom.xml plugin 报错, build path 找不到 jconsole-1.8.0.jar 和 tools-1.8.0.jar 包
maven项目pom.xml突然报错,在Java Build Path 中并没有引用的jar包出现在了Maven Dependencies的依赖包中. 这个错误直接导致了pom.xml文件中 < ...
- idea启动java Maven项目,出现" java: 程序包xxxx不存在"
今天运行Maven项目的时候,出现了,Error:(19, 17) java: 程序包tracetool不存在的情况 本人的解决办法: (1)首先确保maven pom文件不能报错,即文件上面不能有 ...
- windows下的java+maven项目环境搭建
年底了,进公司刚好半年,于是全新一轮的挑战开始:让我接触java项目了,真的是全新的,完全一片茫然.经过了半个月的折腾,把环境搭了一遍又一遍,还可以小小的改一下程序,还OK啦~继续努力.接下来,进入正 ...
- 通过SmartGit把java maven项目传到码云
一.首先先在码云上新建一个项目 二.复制项目的链接 三.打开SmartGit,点击clone 4.把复制的项目链接粘上去 5.然后点两次next,选择一个路径,finish 6.打开刚刚选择的路径,我 ...
- java maven项目 导入jar包注意
1.将jar 包放到lib目录下 2.build path 3.点击maven主项目右键选择properties 4.选择myeclipse 下的第一个选项 5.点击add 选择archives ...
随机推荐
- Fiddler的钩子hook导致电脑无法连上网络
今天,电脑怎么都无法连上网络,重启了几次电脑也不行,网络环境是没有问题的,后来同事告诉我,Fiddler有一个BUG,就是Fiddler获取钩子之后没有释放掉,必须启动Fiddler,再关闭Fiddl ...
- vue父子间通信
父组件是通过props属性给子组件通信的来看下代码: 父组件: <parent> <child :child-com="content"></chil ...
- 关于多系统跨浏览器 BrowserStack 的使用
偶然在Scott Hanselman Blogs看到一篇关于 BrowserStack 博文,对于前端多浏览器测试. 现在拥有各自内核的浏览器越来越多,各自的特性也千差万别.如果作为一个前端攻城师想要 ...
- 2018.06.29 NOIP模拟 区间(前缀和差量)
区间(interval.cpp) 时限:2000ms 空间限制:512MB [问题描述] 给出一个长度为 n 的序列 a[1]-a[n]. 给出 q 组询问,每组询问形如<x,y>< ...
- 2018.07.10NOIP模拟 Draw(容斥原理)
Draw 题目背景 SOURCE:NOIP2016-RZZ-4 T3 题目描述 给定笛卡尔坐标系上 n 个不重复的点. 定义一个 L 形为: 一个形如 (x,y),(x+1,y)-(x+a,y),(x ...
- hdu-1069(dp)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1069 题意:一群猴子,给出n块砖的长x宽y高z,用这些砖拼起的高度最高是多少, 要求底下的砖的长宽都要 ...
- Type mismatch in value from map: expected org.apache.hadoop.io.longWritable
hadoop 编译的程序的报错 执行了命令: hadoop fs -put HTTP_20130313143750.dat /date.dochadoop jar MyDataCount.jar co ...
- 深度linux没有ll等命令的解决办法
编辑~/.bashrc, 添加alias 如下 vim ~/.bashrc 设置别名. 添加如下行 alias ll='ls -alF' alias la='ls -A' alias vi='vim' ...
- C语言中线程和进程的区别
线程是指进程内的一个执行单元也是进程内的可调度的实体,与进程的区别 1) 调度:线程作为调度和分配的基本单位,进程作为拥有资源的基本单位 2) 并发性:不仅进程之间可以并发执行,同一个进程之间的多个线 ...
- 配置使用sourcemap调试vue源码爬坑
环境: Google Chrome V72.0.3626.109 vue-dev V 2.6.10 爬坑的乐趣就不说了(我恨啊),以下说一下出坑要点 1. 在vue-dev的package.json ...