如何运行一个分布式的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 ...
随机推荐
- Web前端开发HTML基础
HTML是英文Hyper Text Mark-up Language(超文本标记语言)的缩写,他是一种制作万维网页面标准语言(标记),相当于定义统一的一套规则,大家都来遵守他,这样就可以让浏览器根据标 ...
- Collection接口的子接口——Deque接口
https://docs.oracle.com/javase/8/docs/api/java/util/Deque.html public interface Deque<E> exten ...
- js小数和百分数的转换
一.百分数转化为小数 function toPoint(percent){ var str=percent.replace("%",""); str= str/ ...
- 机器学习-SVM-核函数
SVM-核函数 在研究了一天的SVM核函数后,我顿悟了一个道理: 研究和使用核函数的人,从一开始的目的就是把data分开而已.高维和映射,都是原来解释操作合理性的,但根本不是进行这一操作的原因 我为什 ...
- 互联网安全架构之常见的Web攻击手段及解决办法
一.Web 安全常见攻击手段 XSS(跨站脚本攻击) SQL 注入 CSRF(跨站请求伪造) 上传漏洞 DDoS(分布式拒绝服务攻击)等 二.攻击手段原理及解决方案 1.XSS攻击 原理:XSS 攻击 ...
- VMware安装CentOS6.3
这里测试的是 CentOS-6.3-x86_64-bin-DVD1 链接:点击进入提取码: zs32 如果这里CentOS下载太慢的话 点击进入下载
- mysql truncate 与 delete的相同点和不同点
相同点 都可以清空表,自增字段将起始值恢复成1 [delete from table_name where 1 可以保持自增的最大值] delete from table_name; truncate ...
- 关于gitlab+jenkins自动部署代码的实现
本人PHP开发者,项目组大多是PHP,少量java项目. 因公司目前服务器和项目的管理比较混乱,与领导商量后,决定尝试 gitlab+jenkins自动化部署(之前用的svn FTP手动部署代码),解 ...
- 常用sql:按照表中的某一列对数据进行分组,统计数据条数
select FROM_UNIXTIME(start_time,'%Y-%m-%d')as date,COUNT(*) FROM random_num GROUP BY FROM_UNIXTIME(s ...
- 02-spring框架—— IoC 控制反转
控制反转(IoC,Inversion of Control),是一个概念,是一种思想.指将传统上由程序代码直接操控的对象调用权交给容器,通过容器来实现对象的装配和管理. 控制反转就是对对象控制权的转移 ...