精华内容
下载资源
问答
  • 使用原因:使用maven时,有些第三方jar包是不能从maven远程仓库中下载得到,因此导致在pom.xml中添加jar包依赖时会怎么添加都会报错(Missing artifact ojdbc:ojdbc:jar:14),这是我们需要自己去相应官网下载jar包,...

    使用原因:

    使用maven时,有些第三方jar包是不能从maven远程仓库中下载得到,因此导致在pom.xml中添加jar包依赖时会怎么添加都会报错(Missing artifact ojdbc:ojdbc:jar:14),这是我们需要自己去相应官网下载jar包,然后手动将jar包添加到本地maven仓库中,这样才可以使用。

    步骤:

    1.下载相应的jar包,此处我使用ojdbc6.jar(maven仓库中不可以下载)为例,记录使用方法;

    2.右击项目——>Run AS/Debug As——>Maven Build..  进入命令使用界面,如下图:

    标记1是此条安装命令的名称,自己定义;标记2是安装的命令;

    3.点击Run,此jar包就可以安装到本地仓库库中。

    命令:

    (ps:此条命令是在cmd中使用的,在Eclipse中命令需要小小改动,接下来我会说明白

    mvn install:install-file -Dfile=your-jar-file-path -DgroupId=com.your.group -DartifactId=your-artifactId -Dversion=x.x -Dpackaging=jar

    -Dfile:是安装ar包的路径;

    -DgroupId:是jar包在maven中的pom.xml中的依赖形式中的groupId;

    -DartifactId:是jar包在maven中的pom.xml中的依赖形式中的artifactId;

    -Dversion:是jar包在maven中的pom.xml中的依赖形式中的version;

    其中-DgroupId,-DgroupId,-DartifactId,-Dversion一定要设计好,后期在pom.xml中需要使用

    Eclipse中使用命令:

    你只需要将上述命令中开头的mvn去掉即可运行安装,如下:

    install:install-file -Dfile=your-jar-file-path -DgroupId=com.your.group -DartifactId=your-artifactId -Dversion=x.x -Dpackaging=jar

    我的ojdbc6.jar 命令如下:

    install:install-file -Dfile=D:\resource\orcle\ojdbc6.jar -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=1.0 -Dpackaging=jar

    添加安装命令,点击Run运行即可,Eclipse 控制台如果出现BUILD SUCCESS代表jar包安装成功。

    然后:

    jar包安装成功后,你还需要在pom.xml对此jar包进行依赖添加。

    我的jdbc6.jar添加形式如下:

    com.oracle

    ojdbc6

    1.0

    groupId就是命令中的-DgroupId;

    artifactId是命令中的-DartifactId;

    version是命令中的-Dversion;

    最后一步

    更新maven项目,右键项目——>Maven——>Update Project,如下图所示

    至此,Eclispe手动添加maven第三方jar包成功,可以在项目的Maven Dependencies中找到添加的jar包,如下图

    展开全文
  •  使用maven时,有些第三方jar包是不能从maven远程仓库中下载得到,因此导致在pom.xml中添加jar包依赖时会怎么添加都会报错(Missing artifact ojdbc:ojdbc:jar:14),这是我们需要自己去相应官网下载jar包,然后...

    使用原因:

      使用maven时,有些第三方jar包是不能从maven远程仓库中下载得到,因此导致在pom.xml中添加jar包依赖时会怎么添加都会报错(Missing artifact ojdbc:ojdbc:jar:14),这是我们需要自己去相应官网下载jar包,然后手动将jar包添加到本地maven仓库中,这样才可以使用。


     步骤:

      1.下载相应的jar包,此处我使用ojdbc6.jar(maven仓库中不可以下载)为例,记录使用方法;

      2.右击项目——>Run AS/Debug As——>Maven Build..  进入命令使用界面,如下图:

      

       标记1是此条安装命令的名称,自己定义;标记2是安装的命令;

      3.点击Run,此jar包就可以安装到本地仓库库中


    命令:

    (ps:此条命令是在cmd中使用的,在Eclipse中命令需要小小改动,接下来我会说明白

    mvn install:install-file  -Dfile=your-jar-file-path  -DgroupId=com.your.group  -DartifactId=your-artifactId -Dversion=x.x -Dpackaging=jar

     

    -Dfile:是安装ar包的路径;

    -DgroupId:是jar包在maven中的pom.xml中的依赖形式中的groupId;
    -DartifactId:是jar包在maven中的pom.xml中的依赖形式中的artifactId;

    -Dversion:是jar包在maven中的pom.xml中的依赖形式中的version;


    其中-DgroupId,-DgroupId,-DartifactId,-Dversion一定要设计好,后期在pom.xml中需要使用


    Eclipse中使用命令:

      你只需要将上述命令中开头的mvn去掉即可运行安装,如下:

    install:install-file  -Dfile=your-jar-file-path  -DgroupId=com.your.group  -DartifactId=your-artifactId -Dversion=x.x -Dpackaging=jar

      我的ojdbc6.jar 命令如下:

    install:install-file  -Dfile=D:\resource\orcle\ojdbc6.jar  -DgroupId=com.oracle  -DartifactId=ojdbc6 -Dversion=1.0 -Dpackaging=jar

      添加安装命令,点击Run运行即可,Eclipse 控制台如果出现BUILD SUCCESS代表jar包安装成功。


    然后:

      jar包安装成功后,你还需要在pom.xml对此jar包进行依赖添加。

      我的jdbc6.jar添加形式如下:

    <!-- ojdbc包,需要自己手动引入 -->
    <dependency>
    	<groupId>com.oracle</groupId>
    	<artifactId>ojdbc6</artifactId>
    	<version>1.0</version>
    </dependency>
    

      groupId就是命令中的-DgroupId;

      artifactId是命令中的-DartifactId;

      version是命令中的-Dversion;


    最后一步

      更新maven项目,右键项目——>Maven——>Update Project,如下图所示

      至此,Eclispe手动添加maven第三方jar包成功,可以在项目的Maven Dependencies中找到添加的jar包,如下图



     

    转载于:https://www.cnblogs.com/zuiyue_jing/p/7566732.html

    展开全文
  • maven打包hadoop项目(含第三方jar)

    千次阅读 2014-12-25 00:12:46
    maven打包hadoop项目(含第三方jar)   问题背景: 1 写map-reduce程序,用到第三方jar,怎么打包并提交项目到服务器执行。 2 mahout中itembased算法,将uidstring映射为long。   我这里实现的具体功能是: ...

     maven打包hadoop项目(含第三方jar)

     

    问题背景:

    1 写map-reduce程序,用到第三方jar,怎么打包并提交项目到服务器执行。

    2 mahout中itembased算法,将uid从string映射为long。

     

    我这里实现的具体功能是:

    Mahout的itembased算法的数据格式是:uid,vid,score。其中uid和vid必须是数字型(long),score是小数整数都可以。

    然而我这里每行记录的字段uid,vid,score,

    uid是含有字母。因此我必须把uid从string映射到long。

    考虑到速度,就用分布式程序来做这个转换。

    此外,还直接调用了mahout里面的一个类

    org.apache.mahout.cf.taste.impl.model.MemoryIDMigrator


    用Maven创建一个标准化的Java项目

    mvn archetype:generate-DarchetypeGroupId=org.apache.maven.archetypes -DgroupId=org.linger.mahout-DartifactId=mahoutProject -DpackageName=org.linger.mahout -Dversion=1.0-DinteractiveMode=false

     

    执行mvn clean install初始化项目,注意会自动生成一个pom.xml文件。

     

    修改pom.xml,

    1 先把junit的去掉。

     

    2 在pom.xml添加mahout依赖jar(这里先不研究mahout这些jar依赖怎么得出来的)

             <properties>
                       <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
                       <mahout.version>0.8</mahout.version>
             </properties>
     
             <dependencies>
                       <dependency>
                                <groupId>org.apache.mahout</groupId>
                                <artifactId>mahout-core</artifactId>
                                <version>${mahout.version}</version>
                       </dependency>
                       <dependency>
                                <groupId>org.apache.mahout</groupId>
                                <artifactId>mahout-integration</artifactId>
                                <version>${mahout.version}</version>
                                <exclusions>
                                         <exclusion>
                                                   <groupId>org.mortbay.jetty</groupId>
                                                   <artifactId>jetty</artifactId>
                                         </exclusion>
                                         <exclusion>
                                                   <groupId>org.apache.cassandra</groupId>
                                                   <artifactId>cassandra-all</artifactId>
                                         </exclusion>
                                         <exclusion>
                                                   <groupId>me.prettyprint</groupId>
                                                   <artifactId>hector-core</artifactId>
                                         </exclusion>
                                </exclusions>
                       </dependency>
             </dependencies>



    3 pom.xml配置jar打包选项

    <build>
        <plugins>
             <plugin>
                  <artifactId>maven-assembly-plugin</artifactId>
                   <configuration>
                        <archive>
                             <manifest>
                                 <mainClass>org.linger.mahout.mapreducer.UserVideoFormat</mainClass>
                             </manifest>
                        </archive>
                        <descriptorRefs>
                            <descriptorRef>jar-with-dependencies</descriptorRef>
                        </descriptorRefs>
                   </configuration>
                   <executions>
                        <execution>
                            <id>make-assembly</id>
                            <phase>package</phase>
                             <goals>
                                 <goal>single</goal>
                             </goals>
                        </execution>
                   </executions>
             </plugin>
        </plugins>
    </build>


     

    我写的map-reduce代码

    package org.linger.mahout.mapreducer;
    
    import java.io.IOException;
    import java.util.StringTokenizer;
    
    import org.apache.hadoop.fs.Path;
    import org.apache.hadoop.io.LongWritable;
    import org.apache.hadoop.io.Text;
    import org.apache.hadoop.mapred.FileInputFormat;
    import org.apache.hadoop.mapred.FileOutputFormat;
    import org.apache.hadoop.mapred.JobClient;
    import org.apache.hadoop.mapred.JobConf;
    import org.apache.hadoop.mapred.MapReduceBase;
    import org.apache.hadoop.mapred.Mapper;
    import org.apache.hadoop.mapred.OutputCollector;
    import org.apache.hadoop.mapred.Reporter;
    import org.apache.hadoop.mapred.TextInputFormat;
    import org.apache.hadoop.mapred.TextOutputFormat;
    import org.apache.hadoop.util.GenericOptionsParser;
    import org.apache.mahout.cf.taste.impl.model.MemoryIDMigrator;
    
    
    public class UserVideoFormat {
    
    	 public static class Map extends MapReduceBase implements Mapper<LongWritable, Text, Text, Text> 
    	 {
    		 	     private Text userId = new Text(); 	
    		 	     private Text lefts = new Text(); 
    		 	     private MemoryIDMigrator thing2long = new MemoryIDMigrator(); 
    		 	      public void map(LongWritable key, Text value, OutputCollector<Text, Text> output, Reporter reporter) throws IOException 
    		 	      {
    		 	    	  String line = value.toString();
    		 	    	  int spliter = line.indexOf(',');
    		 	    	  String userStr = line.substring(0, spliter);
    		 	    	  String leftsStr = line.substring(spliter+1);
    		 	    	   
    		 	    	  userId.set(Long.toString(thing2long.toLongID(userStr)));
    		 	     	  lefts.set(leftsStr);
    				      output.collect(userId, lefts);
    
    		 	      }
    	 }
    	 
    	public static void main(String[] args) throws IOException {
    		// TODO Auto-generated method stub
    		JobConf conf = new JobConf(UserVideoFormat.class);
    		conf.setJobName("UserVideoFormat");
    
    		
    		
    	    conf.setOutputKeyClass(Text.class);
    		conf.setOutputValueClass(Text.class);
    	
    	    conf.setMapperClass(Map.class);
    
    	    conf.set("mapred.textoutputformat.separator", ",");
    	    
    		conf.setInputFormat(TextInputFormat.class);
    		conf.setOutputFormat(TextOutputFormat.class);
    
    		String[] otherArgs = new GenericOptionsParser(conf, args).getRemainingArgs();
    		
    		FileInputFormat.setInputPaths(conf, new Path(otherArgs[0]));
    		FileOutputFormat.setOutputPath(conf, new Path(otherArgs[1]));
    		
            
    		JobClient.runJob(conf);
    	}
    
    }
    


     

     

    执行mvn package打包

    在target目录下自动生成mahoutProject-1.0-jar-with-dependencies.jar

     

    hadoop jar mahoutProject-1.0-jar-with-dependencies.jarinput output

    注意到,由于pom.xml配置中指明该jar包的main函数,所以这里不需要再写明main函数。

    否则,一般都会在jar包后面指明main函数。

     

    参考资料:

    Maven构建Mahout项目

    http://blog.fens.me/hadoop-mahout-maven-eclipse/

    Hadoop Job使用第三方依赖jar文件

    http://shiyanjun.cn/archives/373.html

    mahout做推荐时uid,pid为string类型

    http://blog.csdn.net/pan12jian/article/details/38703569



    本文链接:http://blog.csdn.net/lingerlanlan/article/details/42086623

    本文作者:linger


    展开全文
  • 九代单传SSM项目,项目代码、maven库直接同事处拷贝。项目在同事那边可正常运行、可成功打包。该项目环境搭建完之后,可以在本机正常运行。但是maven打包,报错。 fastdfs_client-1.25.jar包,在maven中央仓库是...

    项目背景:
    九代单传SSM项目,项目代码、maven库直接从同事处拷贝。项目在同事那边可正常运行、可成功打包。该项目环境搭建完之后,可以在本机正常运行。但是maven打包,报错。
    fastdfs_client-1.25.jar包,在maven中央仓库是没有的。至于怎么来的,因为祖传代码的原因已经无从考证了。据悉,最初项目组是搭建过私服的,这个jar包可以从私服下载。但是,目前私服已经停用。
    1、最初的时候,打包报错如下:
    在这里插入图片描述
    这个错误的原因是:因为下载不到,我不让他走在线下载的模式,所以选择了offline模式。显然,他还是走了途中地址,下载失败,并且提示这个包以前没有下载过。(这样说,其实也对,因为仓库没有,肯定是没下载过)
    2、然后,我调回在线模式,还是报错。并且其他的一些jar包也出现了问题。
    在这里插入图片描述
    导入maven时,控制台报错如下:

    Could not transfer artifact org.csource:fastdfs_client:pom:1.25 from/to public (http://repo1.maven.org/maven2/): Failed to transfer file http://repo1.maven.org/maven2/org/csource/fastdfs_client/1.25/fastdfs_client-1.25.pom with status code 501
    

    3、至此,我开始怀疑项目识别不到这个jar包,想要手动指定。
    打开projectstructure,果然报错了,手动指定。在这里插入图片描述
    手动指定完了,但是导入玩,又报错了。
    4、网上查了方法。使用这种方式,将jar包安装到本地。这种方案,我个人认为应该是对的。其实就是远程库没有,就jar装到库里。

    mvn install:install-file -DgroupId=org.csource -DartifactId=fastdfs-client -Dversion=1.25 -Dpackaging=jar -Dfile=F:\fastdfs_client-1.25.jar
    

    成功了,但是仍然打包失败。
    中间尝试过、删除.propeties(个人感觉这个方法就是扯犊子)等其他方法,均告失败。

    5、万般无奈之下,再次分析了形式。基本方向仍然应该是打包使用本地包。

    经前辈指点:
    1)WEB-INF 下新建lib文件夹,将此jar包放到此文件夹下。
    2)pom文件引入:
    在这里插入图片描述
    3)同时,发现一个问题,我们项目引用的某个jar包内部也引用了这个包,导致了冲突。极有可能在2)的时候已经解决了,但是因为冲突一直报错。排除掉。
    在这里插入图片描述

    重要:20200620补充:
    关于手动安装第三方jar包。(当然肯定是中央仓库没有的)
    我在上边的第4步中,其实已经使用了。但是,很多人可能安装完后失败了。正好今天在做阿里云视频点播时,他有一个包没有正式开源,也需要手动安装。我也遇到了安装失败的问题(准确说也不是安装失败,而是安装错了位置)。
    说一下具体情况:
    jar包已经从阿里云下载下来了,解压到某目录下,比如我这个:
    在这里插入图片描述
    我得目标时将upload这个包安装到本地maven库。
    按照正常操作,我应该在此目录下打开cmd窗口执行如下(跟4步骤类似,参数稍有不同,影响不大):

    mvn install:install-file -DgroupId=com.aliyun -DartifactId=aliyun-sdk-vod-upload -Dversion=1.4.11 -Dpackaging=jar -Dfile=aliyun-java-vod-upload-1.4.11.jar
    

    但是,安装完成(cmd窗口已经提示build success)后,重新导入发现项目中的依赖还是报错。仔细观察cmd窗口执行结果,发现:
    在这里插入图片描述
    它将jar包安装到我上一家公司的某个项目对应的仓库中了。(平时我们做项目可能会根据不同情况,切换不同的仓库),这是因为,它按照这里的配置给安装的。
    在这里插入图片描述
    这里边的setting.xml中配置的本地库不是当前项目的仓库位置,把这里改成对应的仓库位置就好了。如:
    在这里插入图片描述

    之后重复安装步骤即可:
    在这里插入图片描述

    查看项目,发现依赖已经正常。(要是还报错,重新导入依赖一半就好了)

    展开全文
  • 如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下 载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响...
  • maven nexus

    2019-01-04 12:21:33
     如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响...
  • maven私有库搭建

    千次阅读 2018-01-11 13:25:13
    如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响...
  • Maven Nexus

    2015-04-05 13:02:00
    如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响...
  •  如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下 载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响...
  • Maven私服搭建

    千次阅读 2016-12-19 16:32:02
     如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响...
  • 如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方Maven仓库下载到本地, 而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响...
  •  如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响...
  • 如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了带宽,如果网速慢的话,还会影响项目的...
  • Nexus 搭建Maven 私服

    2017-12-23 00:04:28
    1、 为什么使用Nexus 如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如果...
  • Nexus搭建Maven私服

    2015-07-02 20:46:39
     如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响...
  • SSH项目到Maven项目。

    千次阅读 2015-11-21 22:57:57
    在这里,我将手把手教你SSH项目到Maven项目。 首先,我们在MyEclipse下有一个项目...在没有Maven前,第三方jar包的导入就是这样。有了maven之后就好了。只要在配置文件pom.xml中(Project Object Model)把依赖配置c
  • 如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响...
  • 基于nexus搭建maven私服

    2018-07-29 09:39:00
    如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响...
  • Sonatype Nexus 搭建Maven仓库

    千次阅读 2016-09-30 00:09:49
    如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响...
  • window下配置 maven私服

    2015-08-25 10:17:05
     如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下 载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响...
  • 如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响...
  •  如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下 载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响...
  • 如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响...

空空如也

空空如也

1 2 3 4 5
收藏数 88
精华内容 35
关键字:

maven怎么从第三方