如何运行一个分布式的Maven项目
本人也属于一个新手小白,之前在公司运行的项目也都不涉及到maven...但是前两天运行一个maven项目的时候发现,第一次接触这个还是蛮让我措手不及的.在这里整理下自己当时走的弯路,或者遇到的一些问题吧.
1.首先一个项目无论是直接从别的地址复制过来的或者是通过SVN检出的,这些都没有什么影响.首先就是将这个项目导入到eclipse中
就像上面一样,将打有马赛克的项目导入到eclipse中,这个是有因为是eclipse第一次导入这个项目,需要build项目,这个时间几分钟应该就结束了...
2.这个时候可能会遇见一些奇怪的问题,就是项目的有的JS文件会报错,实际上,我们看下那些出错的JS,都不存在什么问题的,
这边我查了下网上的教程
大体上出现的原因是eclipse会对js这一类的文件进行Valudator(验证),不过我尝试修改发现其实没有什么实质性的改变,所以最后通过另外的方式消除了这些错误.
3.当项目导入之后,因为maven项目本身是有一个pom.xml文件
这个时候,eclipse,会通过自带的maven插件下载缺少的jar包,
但是我在这里不建议,使用eclipse本身自带的maven,因为我在运行项目的时候种种原因都导致项目会运行报错.
因此我们可以根据项目所需要的maven版本(最好是对应项目的版本的Maven)去下载一个.然后将eclipse默认的maven替换掉
在这里通过add打开文件夹添加一个自己下载好的maven,另外我们还要改变maven文件的默认仓库下载路径.在eclipse中的配置是找到这个setting文件的位置,替换掉就好了.
4.如何修改默认的下载仓库位置:一般默认仓库位置都在这里,
实际上我们只需要将maven/conf 中的setting文件进行修改就可以了.默认的下载路径就是我截图的位置,实际上如果想要修改,可以修改localRepository标签的值就可以
5.如果因为各种原因导致jar中途下载失败的,可以尝试右键项目,更新这些jar包.
当然有些jar包如果不能下载,是你从别的地方找来的,需要安装到你的本地仓库中的,也是可以的.
你需要配置你本地的maven环境变量,创建mavenhome,之后再path中配置bin 略....
之后的操作就是,打开控制面板,进入你下载好的jar包路径,执行类似下面一样的语句:
mvn install:install-file -DgroupId="com.alipay" -DartifactId=sdk-Java -Dversion=20161107120208 -Dpackaging=jar -Dfile="alipay-sdk-java20161107120208.jar"
一定要确保你maven项目pom所需要的文件都已经下载成功之后你在尝试着运行项目,否则,项目的运行过程中,总会有问题导致你项目打包失败...(最开始的时候我项目缺少一个jar包,于是我在pom中注释掉,最后一个其中一个项目因为缺少必要的类,就挂掉了)
6.如何开启一个项目
首先,因为是分布式项目,每一个子项目都会互相关联,首先要做的是,在开启的时候使用maven自带的功能进行打包:
当所有的都打包完成之后,可以配置开启的命令,或者直接点maven build,因为,我这个项目使用的是jetty插件开启的方式,所以可以这么配置.
选择好开启的项目,直接点击运行就额可以了,注意项目直接的关系,就比如说我运行项目的时候需要先运行service端的,之后再开启想要开启的内容..
运行时候如果出现什么问题,基本上是因为所关联的项目没有打包,
当然还有一种可能是会提示插件不存在,看下是不是因为这个配置的是jre,而不是jdk
另外还记得上面的那个项目刚刚导入存在的那些错误提示么.这个我之前也没有找到什么方法去解决,但是当我把maven版本改成项目所需要的版本后,并几次打包运行之后这个问题就消失了,因为比较玄学就没有过多关注, 所以如果你遇见了,可以自行百度,找你所用的到的方式解决.
谢谢你长得那么好看还给我点赞,纯手打.............................................
如何运行一个分布式的Maven项目的更多相关文章
- 如何使用IDEA运行 一个分布式的项目
前一段时间,曾不止一次的尝试过,如何把一个分布式的maven项目,用IDE运行起来.连续的几次失败,让我明白之前启动的方式是有问题的.因此把正确的启动方式整理了一下 .引以为戒 一.起初启动失败的原因 ...
- maven(二):创建一个可用的maven项目,完整过程
环境:eclipse4.5 (内置maven插件) 创建maven项目 文件菜单--新建--其他-- maven project 下一步 选择web 结构 group id: 指项目在maven本地 ...
- 启动一个SpringBoot的maven项目
最近拿到了一个maven项目,原先是使用.net开发的,虽然Java和C#的语法相近,但是难免还有一些差别,包括语言特性,IDE的使用方面,都需要一段时间的习惯和适应. 该项目总体上是前后端分 ...
- maven权威指南学习笔记(三)——一个简单的maven项目
目标: 对构建生命周期 (build lifecycle),Maven仓库 (repositories),依赖管理 (dependency management)和项目对象模型 (Project O ...
- idea运行多模块的maven项目,工作目录不一致的问题
我使用idea开发多模块的maven项目,目录结构如下: segment (父级) ---pom.xml ---core (子模块) ...
- Spring Cloud 5分钟搭建教程(附上一个分布式日志系统项目作为参考) - 推荐
http://blog.csdn.net/lc0817/article/details/53266212/ https://github.com/leoChaoGlut/log-sys 上面是我基于S ...
- 使用Intellij IDEA搭建一个简单的Maven项目
IntelliJ IDEA是Java最优秀的开发工具,它功能全面,提示比较智能,开发界面炫酷,新技术支持的比较迅速. 我使用了Eclipse快10年了,IntelliJ IDEA这么好用必须要试一试. ...
- Laravel 从入门到精通 创建并运行一个新的 Laravel 项目
创建一个新的 Laravel 项目 正如官方文档所言,有两种方式可以创建一个新的 Laravel 项目,这两种创建方式都是从命令行执行的:第一种是通过全局的 Laravel 安装器,另一种是通过 Co ...
- 构建一个简单的Maven项目
这里用Maven Archetype插件从空白开始创建简单的项目. 熟悉Maven 项目和Maven的核心概念. 关键词:构建生命周期(build lifecycle), Maven仓库(reposi ...
随机推荐
- 099、如何访问Service (Swarm06)
参考https://www.cnblogs.com/CloudMan6/p/7909136.html 前面已经学习了如何部署Service吗,也验证了swarm的failover特性,下面我们要学 ...
- loj 6043「雅礼集训 2017 Day7」蛐蛐国的修墙方案
loj 爆搜? 爆搜! 先分析一下,因为我们给出的是一个排列,然后让\(i\)给\(p_i\)连边,那么我们一定会得到若干个环,最后要使得所有点度数为1,也就是这些环有完备匹配,那么最后一定全是偶环. ...
- MySQL--高性能MySQL笔记二
人们通常使用varchar(15):来存储IP地址,然而它们其实是32位无符号整数,不是字符串,所以应该使用无符号整数存储IP地址,MySQL 提供 INET_ATON() 和 INET_NTOA() ...
- HTTPS中SSL/TLS握手时的私钥用途(RSA、ECDHE)
从上一篇HTTPS中CA证书的签发及使用过程中知道服务端在申请CA证书时只上交了密钥对中的公钥,那么只有服务端知道的私钥有什么作用呢? SSL/TLS层的位置 SSL/TLS层在网络模型的位置,它属于 ...
- lambda中FirstOrDefault和First
First()表示取集合中的第一个元素,如果集合为空,则抛异常. FirstOrDefault()表示取集合的第一个元素. 如果集合为空,且集合元素是引用类型,则返回null. 如果集合为空,且集合元 ...
- 享元模式<Flyweight Pattern>
1.What-是什么? 享元模式是一种轻量级的结构型模式.旨在以共享的方式高效的支持大量的细粒度对象的复用.要求能够共享的对象必须是细粒度对象,这些对象比较相似,状态变化小. 2.Why-为什么? ...
- ISO/IEC 15444-12 MP4 封装格式标准摘录 2
目录 Track Media Structure Media Box Media Header Box Handler Reference Box Media Information Box Medi ...
- 借助Charles来测试移动端-下篇
本篇是借助Charles来测试移动端的下半篇.(上篇任意门点我) 上次说到可以借助Charles来抓移动端的网络请求,接下来,我们来看一下怎么通过Charles来模拟返回,还是以网页版豆瓣为例. 先找 ...
- 09Cookie&Session
1.会话技术 1. 会话:一次会话中包含多次请求和响应. 一次会话:浏览器第一次给服务器资源发送请求,会话建立,直到有一方断开为止2. 功能:在一次会话的范围内的多次请求间,共享数据3. 方式: 1 ...
- 19.8.12 记录Scaffold(脚手架)的常见属性及使用
Scaffold 有利于我们快速的构建页面,使用也是十分的方便. 下面记录一下其简单的使用方法 Scaffold( appBar: AppBar( title: Text('课程'), ), bo ...