如何运行一个分布式的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 ...
随机推荐
- 生成ini文件
setProfileString是无法直接生成ini文件的,如果不存在这个ini文件需要先创建,然后再setProfileString.示例代码//保存连接参数到配置文件if not FileExis ...
- 稀疏矩阵三元组快速转置(转poklau123写的很清楚)
关于稀疏矩阵的快速转置法,首先得明白其是通过对三元表进行转置.如果误以为是对矩阵进行转置,毫无疑问就算你想破脑袋也想不出个所以然,别陷入死胡同了! 对于一个三元表,行为i,列为j,值为v.需将其i与j ...
- css中的position 的absolute和relative的区别(转)
我们先来看看CSS3 Api中对position属性的相关定义: static:无特殊定位,对象遵循正常文档流.top,right,bottom,left等属性不会被应用. relative:对象遵循 ...
- 冒泡排序(java可直接跑,算法思想等小儿科不多说直接上代码)
import java.util.Arrays; /** *冒泡排序:时间复杂度O(N^2),空间复杂度O(1),稳定的排序 * 每趟确定一个元素的位置,所以需要arr.length趟排序, */pu ...
- python 定义变量
定义变量 什么是变量? 在程序运行过程中,其值可以改变的量 标识符(命令规范) 只能由数字.字母.下划线组成 不能以数字开头 不能是系统关键字 # 导入包import keyword# 打印所有关键 ...
- 一个页面两个div(一个柱状图或者折线图一个饼图)
需求是一个页面中两个图,一个饼图一个折线图,接口用的是一个接口,柱状图的图例要隐藏掉,X轴为月份,每月份都有两个数据,也就是图例是两个(进口和出口)的意思饼图需要显示最新月份数据,并且有一个下拉框可以 ...
- 90. Subsets II (Java)
Given a collection of integers that might contain duplicates, nums, return all possible subsets (the ...
- 使用sproxy.exe访问基于soap的webservice
使用vc访问基于soap的webservice有多种方法,其中有一种是使用atlsoap,关于这个可以搜索sproxy.exe文章,不在这介绍(主要是我的写作能力太差).我写这个日记主要是项记录访问w ...
- git中working tree, index, commit
这三个名字可以简单理解为文件在本地仓库存在的三种不同的位置. 如下,是做commit提交两段提交过程,工作区(working tree),暂存区(index)和 branch(commit). wor ...
- WebView net::ERR_CLEARTEXT_NOT_PERMITTED&&net::ERR_INTERNET_DISCONNECTED
参照博客:https://blog.csdn.net/qq_33721320/article/details/84400825 测试Android 中WebView功能时,发现了这个问题: 解决的方式 ...