2017-10-05 98 views
1

我對Maven相當陌生並試圖編譯一個非常簡單的項目。這是我pom.xml文件:Maven未能依賴並且編譯失敗

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <groupId>com.bharani.aws</groupId> 
    <artifactId>com.bharani.aws.dynamo</artifactId> 
    <version>1.0-SNAPSHOT</version> 

    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <version>3.3</version> 
       <configuration> 
        <source>1.8</source> 
        <target>1.8</target> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 

    <dependencyManagement> 
     <dependencies> 
      <dependency> 
       <groupId>com.amazonaws</groupId> 
       <artifactId>aws-java-sdk-bom</artifactId> 
       <version>1.11.106</version> 
       <type>pom</type> 
       <scope>import</scope> 
      </dependency> 
      <dependency> 
       <groupId>org.projectlombok</groupId> 
       <artifactId>lombok</artifactId> 
       <version>1.16.16</version> 
       <scope>provided</scope> 
      </dependency> 
     </dependencies> 
    </dependencyManagement> 

</project> 

當我做mvn compile,我得到了一堆cannot find symbol錯誤。顯然,依賴不會被下載和使用。這裏是錯誤日誌:

f45c89aa1b75:bharani-aws-dynamo janakiab$ mvn compile 
[INFO] Scanning for projects... 
[INFO] 
[INFO] ------------------------------------------------------------------------ 
[INFO] Building com.bharani.aws.dynamo 1.0-SNAPSHOT 
[INFO] ------------------------------------------------------------------------ 
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ com.bharani.aws.dynamo --- 
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent! 
[INFO] Copying 0 resource 
[INFO] 
[INFO] --- maven-compiler-plugin:3.3:compile (default-compile) @ com.bharani.aws.dynamo --- 
[INFO] Changes detected - recompiling the module! 
[WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. build is platform dependent! 
[INFO] Compiling 2 source files to /Users/janakiab/code/bharani-aws-dynamo/target/classes 
[INFO] ------------------------------------------------------------- 
[ERROR] COMPILATION ERROR : 
[INFO] ------------------------------------------------------------- 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[3,54] package com.amazonaws.services.dynamodbv2.datamodeling does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[4,54] package com.amazonaws.services.dynamodbv2.datamodeling does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[5,54] package com.amazonaws.services.dynamodbv2.datamodeling does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[6,54] package com.amazonaws.services.dynamodbv2.datamodeling does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[7,14] package lombok does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[8,14] package lombok does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[9,14] package lombok does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[10,14] package lombok does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[11,14] package lombok does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[16,2] cannot find symbol 
    symbol: class Data 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[17,2] cannot find symbol 
    symbol: class Builder 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[18,2] cannot find symbol 
    symbol: class ToString 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[19,2] cannot find symbol 
    symbol: class NoArgsConstructor 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[20,2] cannot find symbol 
    symbol: class AllArgsConstructor 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[21,2] cannot find symbol 
    symbol: class DynamoDBTable 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[3,26] package com.amazonaws.auth does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[4,26] package com.amazonaws.auth does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[5,29] package com.amazonaws.regions does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[6,41] package com.amazonaws.services.dynamodbv2 does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[7,41] package com.amazonaws.services.dynamodbv2 does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[8,54] package com.amazonaws.services.dynamodbv2.datamodeling does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[33,13] cannot find symbol 
    symbol: class AmazonDynamoDB 
    location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[41,44] cannot find symbol 
    symbol: class AmazonDynamoDB 
    location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[41,13] cannot find symbol 
    symbol: class DynamoDBMapper 
    location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[24,6] cannot find symbol 
    symbol: class DynamoDBAutoGeneratedKey 
    location: class com.bharani.aws.CustomerInfo 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[25,6] cannot find symbol 
    symbol: class DynamoDBHashKey 
    location: class com.bharani.aws.CustomerInfo 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[28,6] cannot find symbol 
    symbol: class DynamoDBAttribute 
    location: class com.bharani.aws.CustomerInfo 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[31,6] cannot find symbol 
    symbol: class DynamoDBAttribute 
    location: class com.bharani.aws.CustomerInfo 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[34,6] cannot find symbol 
    symbol: class DynamoDBAttribute 
    location: class com.bharani.aws.CustomerInfo 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[37,6] cannot find symbol 
    symbol: class DynamoDBAttribute 
    location: class com.bharani.aws.CustomerInfo 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[40,6] cannot find symbol 
    symbol: class DynamoDBAttribute 
    location: class com.bharani.aws.CustomerInfo 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[22,15] cannot find symbol 
    symbol: class AmazonDynamoDB 
    location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[23,15] cannot find symbol 
    symbol: class DynamoDBMapper 
    location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[36,38] cannot find symbol 
    symbol: class AWSStaticCredentialsProvider 
    location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[37,29] cannot find symbol 
    symbol: class BasicAWSCredentials 
    location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[35,29] cannot find symbol 
    symbol: variable Regions 
    location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[34,16] cannot find symbol 
    symbol: variable AmazonDynamoDBClientBuilder 
    location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[42,20] cannot find symbol 
    symbol: class DynamoDBMapper 
    location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[46,28] cannot find symbol 
    symbol: method builder() 
    location: class com.bharani.aws.CustomerInfo 
[INFO] 39 errors 
[INFO] ------------------------------------------------------------- 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD FAILURE 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 1.560 s 
[INFO] Finished at: 2017-10-04T18:46:40-07:00 
[INFO] Final Memory: 15M/302M 
[INFO] ------------------------------------------------------------------------ 
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.3:compile (default-compile) on project com.bharani.aws.dynamo: Compilation failure: Compilation failure: 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[3,54] package com.amazonaws.services.dynamodbv2.datamodeling does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[4,54] package com.amazonaws.services.dynamodbv2.datamodeling does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[5,54] package com.amazonaws.services.dynamodbv2.datamodeling does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[6,54] package com.amazonaws.services.dynamodbv2.datamodeling does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[7,14] package lombok does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[8,14] package lombok does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[9,14] package lombok does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[10,14] package lombok does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[11,14] package lombok does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[16,2] cannot find symbol 
[ERROR] symbol: class Data 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[17,2] cannot find symbol 
[ERROR] symbol: class Builder 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[18,2] cannot find symbol 
[ERROR] symbol: class ToString 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[19,2] cannot find symbol 
[ERROR] symbol: class NoArgsConstructor 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[20,2] cannot find symbol 
[ERROR] symbol: class AllArgsConstructor 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[21,2] cannot find symbol 
[ERROR] symbol: class DynamoDBTable 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[3,26] package com.amazonaws.auth does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[4,26] package com.amazonaws.auth does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[5,29] package com.amazonaws.regions does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[6,41] package com.amazonaws.services.dynamodbv2 does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[7,41] package com.amazonaws.services.dynamodbv2 does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[8,54] package com.amazonaws.services.dynamodbv2.datamodeling does not exist 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[33,13] cannot find symbol 
[ERROR] symbol: class AmazonDynamoDB 
[ERROR] location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[41,44] cannot find symbol 
[ERROR] symbol: class AmazonDynamoDB 
[ERROR] location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[41,13] cannot find symbol 
[ERROR] symbol: class DynamoDBMapper 
[ERROR] location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[24,6] cannot find symbol 
[ERROR] symbol: class DynamoDBAutoGeneratedKey 
[ERROR] location: class com.bharani.aws.CustomerInfo 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[25,6] cannot find symbol 
[ERROR] symbol: class DynamoDBHashKey 
[ERROR] location: class com.bharani.aws.CustomerInfo 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[28,6] cannot find symbol 
[ERROR] symbol: class DynamoDBAttribute 
[ERROR] location: class com.bharani.aws.CustomerInfo 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[31,6] cannot find symbol 
[ERROR] symbol: class DynamoDBAttribute 
[ERROR] location: class com.bharani.aws.CustomerInfo 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[34,6] cannot find symbol 
[ERROR] symbol: class DynamoDBAttribute 
[ERROR] location: class com.bharani.aws.CustomerInfo 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[37,6] cannot find symbol 
[ERROR] symbol: class DynamoDBAttribute 
[ERROR] location: class com.bharani.aws.CustomerInfo 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/CustomerInfo.java:[40,6] cannot find symbol 
[ERROR] symbol: class DynamoDBAttribute 
[ERROR] location: class com.bharani.aws.CustomerInfo 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[22,15] cannot find symbol 
[ERROR] symbol: class AmazonDynamoDB 
[ERROR] location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[23,15] cannot find symbol 
[ERROR] symbol: class DynamoDBMapper 
[ERROR] location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[36,38] cannot find symbol 
[ERROR] symbol: class AWSStaticCredentialsProvider 
[ERROR] location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[37,29] cannot find symbol 
[ERROR] symbol: class BasicAWSCredentials 
[ERROR] location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[35,29] cannot find symbol 
[ERROR] symbol: variable Regions 
[ERROR] location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[34,16] cannot find symbol 
[ERROR] symbol: variable AmazonDynamoDBClientBuilder 
[ERROR] location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[42,20] cannot find symbol 
[ERROR] symbol: class DynamoDBMapper 
[ERROR] location: class com.bharani.aws.Main 
[ERROR] /Users/janakiab/code/bharani-aws-dynamo/src/main/java/com/bharani/aws/Main.java:[46,28] cannot find symbol 
[ERROR] symbol: method builder() 
[ERROR] location: class com.bharani.aws.CustomerInfo 
[ERROR] -> [Help 1] 
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. 
[ERROR] Re-run Maven using the -X switch to enable full debug logging. 
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles: 
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException 
f45c89aa1b75:bharani-aws-dynamo janakiab$ 

有人可以指我,如果我失去了一些東西?

謝謝。

+1

你是否檢查過這個:https://stackoverflow.com/questions/28325297/lombok-and-maven?最後的評論。有一種方法可以配置您的標記 –

回答

1

您的依賴關係在< dependencyManagement>部分中定義。在本節中,它定義父項目中的依賴關係,並允許在子模塊中使用相同的版本。如果您刪除< dependencyManagement>標記和/或僅在<依賴項中添加相同的內容>並且它應該正常工作。

查看maven dependency management page瞭解更多詳情。

+1

謝謝。有效。此外,對於直接依賴,進口的一切,我應該這樣做: <依賴性> com.amazonaws AWS-Java的SDK 1.11.106 http://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/setup-project-maven.html – bdhar