2013-09-03 4 views
0

나는 Mahout 초보자입니다.Mahout 오류 : 목표를 실행하지 못했습니다. org.codehaus.mojo : exec-maven-plugin : 1.2.1

난 후 다음에서 설명하는 추천인 구현하기 위해 노력했다 : 자바 코드에 따라

Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.2.1:exec (default-cli) on project mahoutrec: Command execution failed. Process exited with an error: 1 (Exit value: 1) -> [Help 1] 

To see the full stack trace of the errors, re-run Maven with the -e switch. 
Re-run Maven using the -X switch to enable full debug logging. 

: 다음과 같은 오류를 https://code.google.com/p/unresyst/wiki/CreateMahoutRecommender

내가하고, NetBean IDE를 사용하여 시도하고 있었다를받을

package com.mahout; 

import java.io.File; 
import java.io.FileNotFoundException; 
import java.util.List; 
import java.io.IOException; 

import org.apache.commons.cli2.OptionException; 
import org.apache.mahout.cf.taste.common.TasteException; 
import org.apache.mahout.cf.taste.impl.model.file.FileDataModel; 
import org.apache.mahout.cf.taste.impl.recommender.CachingRecommender; 
import org.apache.mahout.cf.taste.impl.recommender.slopeone.SlopeOneRecommender; 
import org.apache.mahout.cf.taste.model.DataModel; 
import org.apache.mahout.cf.taste.recommender.RecommendedItem; 
import org.apache.mahout.cf.taste.impl.common.LongPrimitiveIterator; 

public class UnresystBoolRecommend { 

public static void main(String... args) throws FileNotFoundException, TasteException,  IOException, OptionException { 

    //create data source (model) - from the csv file    
    File ratingsFile = new File("hdfs://------/user/hdfs/mahout/dummy-bool.csv");       
    DataModel model = new FileDataModel(ratingsFile); 

    // create a simple recommender on our data 
    CachingRecommender cachingRecommender = new CachingRecommender(new SlopeOneRecommender(model)); 

    // for all users 
    for (LongPrimitiveIterator it = model.getUserIDs(); it.hasNext();){ 
     long userId = it.nextLong(); 

     // get the recommendations for the user 
     List<RecommendedItem> recommendations = cachingRecommender.recommend(userId, 10); 

     // if empty write something 
     if (recommendations.size() == 0){ 
      System.out.print("User "); 
      System.out.print(userId); 
      System.out.println(": no recommendations"); 
     } 

     // print the list of recommendations for each 
     for (RecommendedItem recommendedItem : recommendations) { 
      System.out.print("User "); 
      System.out.print(userId); 
      System.out.print(": "); 
      System.out.println(recommendedItem); 
     } 
    }   
    } 
} 

회신을 보내며 귀하의 도움을 매우 높이 평가하겠습니다.

편집 :

내가 pom.xml 파일 변경, 일부 버전 호환성 문제가 지금 나를 위해 잘 작동이 있었다. 때로는 약간의 의존성 문제를 만들기 위해 알고 있기 때문에

rm -rf ~/.m2/ 
mvn clean install 

은 받는다는 저장소를 청소 :

여기에 업데이트 된 pom.xml 파일

<modelVersion>4.0.0</modelVersion> 
<groupId>org.wikimedia</groupId> 
<artifactId>mahoutrec</artifactId> 
<version>0.2-CDH4</version> 
<packaging>jar</packaging> 
<name>mahoutrec</name> 
<url>http://github.com/whym/wikihadoop</url> 
<properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
</properties> 
<repositories> 
    <repository> 
     <id>cloudera-2</id> 
     <name>Cloudera Repository</name> 
     <url>https://repository.cloudera.com/artifactory/cloudera-repos</url> 
    </repository> 
    </repositories> 
    <dependencies> 
    <dependency> 
     <groupId>org.apache.hadoop</groupId> 
     <artifactId>hadoop-common</artifactId> 
     <version>2.0.0-cdh4.3.0</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.hadoop</groupId> 
     <artifactId>hadoop-mapreduce</artifactId> 
     <version>2.0.0-cdh4.3.0</version> 
     <type>pom</type> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.hadoop</groupId> 
     <artifactId>hadoop-client</artifactId> 
     <version>2.0.0-cdh4.3.0</version> 
    </dependency> 
    <dependency> 
     <groupId>log4j</groupId> 
     <artifactId>log4j</artifactId> 
     <version>1.2.13</version> 
    </dependency> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>4.10</version> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>commons-logging</groupId> 
     <artifactId>commons-logging</artifactId> 
     <version>1.1.1</version> 
    </dependency> 

     <dependency> 
    <groupId>org.apache.mahout</groupId> 
    <artifactId>mahout-core</artifactId> 
    <version>0.4</version> 
    </dependency> 


    </dependencies> 
    <build> 
    <plugins> 
     <plugin> 
      <artifactId>maven-javadoc-plugin</artifactId> 
      <version>2.8.1</version> 
      <configuration> 
       <linksource>true</linksource> 
       <includeDependencySources>true</includeDependencySources> 
      </configuration> 
     </plugin> 
     <plugin> 
      <artifactId>maven-jar-plugin</artifactId> 
      <version>2.4</version> 
      <configuration> 
       <archive> 
        <manifest> 
           <mainClass>org.wikimedia.wikihadoop.StreamWikiDumpInputFormat</mainClass> 
        </manifest> 
       </archive> 
      </configuration> 
     </plugin> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <version>2.4</version> 
      <configuration> 
       <source>1.5</source> 
       <target>1.5</target> 
      </configuration> 
     </plugin> 
    </plugins> 
    <resources> 
     <resource> 
      <directory>${project.build.directory}/dependency</directory> 
     </resource> 
    </resources> 
    </build> 
    </project> 

답변

0

당신이 일을 시도해 봤어입니다.

그리고 내가보기 엔

mvn -Dmaven.test.skip=true install 

또는

mvn -DskipTests install 

코끼리 조련사에 대한 검사와 나를 위해 mvn install이 성공하지 않기 때문에

을하는 것이 좋습니다.

+0

내 제안이 효과가 있습니까? –

+0

정보 주셔서 감사합니다. Netbean IDE를 사용하여 코드를 시도했지만 maven이 별도로 설치되지 않았습니다. 나는 pm.xml에서 의존성을 바꿨고 지금은 잘 작동한다. –

+2

pom.xml에 어떤 의존성을 넣었는지 설명해도 별개의 답을 통해 문제를 해결할 수 있기 때문에 동일한 문제가있는 경우 다른 사람이 사용할 수 있습니다. –

관련 문제