Java 创建新的maven项目指南

Java 创建新的maven项目指南,java,maven,vaadin7,Java,Maven,Vaadin7,我正要创建一个新的maven项目,遇到了这个有趣的指南 现在,我有两个问题,关于如何让它与maven项目一起工作,因为在处理事情的方式上似乎存在一些差异 当我创建一个maven项目时,我没有得到本文末尾描述的相同结构: com.example.mycomponent MyComponent.java MyComponentWidgetset.gwt.xml com.example.mycomponent.client MyComponentConnector.java M

我正要创建一个新的maven项目,遇到了这个有趣的指南 现在,我有两个问题,关于如何让它与maven项目一起工作,因为在处理事情的方式上似乎存在一些差异

  • 当我创建一个maven项目时,我没有得到本文末尾描述的相同结构:

    com.example.mycomponent
       MyComponent.java
       MyComponentWidgetset.gwt.xml
    com.example.mycomponent.client
       MyComponentConnector.java
       MyComponentWidget.java
    
    这正常吗?这是否意味着我必须在maven中修改我的结构

  • 他们似乎不是在谈论pom.xml文件,而是web.xml,他们是同一件事吗


  • 一般来说,我想做的是创建一个新的maven项目并遵循本教程

    Vaadin和maven是两件不同的事情

    Vaadin是一个用于构建现代web应用程序的Java框架,您可以通过POM.xml将其导入Maven项目:

    <dependency>
        <groupId>com.vaadin</groupId>
        <artifactId>vaadin-server</artifactId>
        <version>7.6.6</version>
    </dependency>
    <dependency>
        <groupId>com.vaadin</groupId>
        <artifactId>vaadin-client-compiled</artifactId>
        <version>7.6.6</version>
    </dependency>
    
    <!-- Optional for extending client-side See: https://vaadin.com/book/-/page/clientside.html
    <dependency>
        <groupId>com.vaadin</groupId>
        <artifactId>vaadin-client</artifactId>
        <version>7.6.6</version>
        <scope>provided</scope>
    </dependency>
    -->
    
    <!-- Optional for optimizing client-side widgets See: https://vaadin.com/book/-/page/mobile.optimization.html
    <dependency>
        <groupId>com.vaadin</groupId>
        <artifactId>vaadin-client-compiler</artifactId>
        <version>7.6.6</version>
        <scope>provided</scope>
    </dependency>
    -->
    
    <dependency>
        <groupId>com.vaadin</groupId>
        <artifactId>vaadin-themes</artifactId>
        <version>7.6.6</version>
    </dependency>
    
    <!-- Optional push support for communication See: https://vaadin.com/book/-/page/advanced.push.html
    <dependency>
        <groupId>com.vaadin</groupId>
        <artifactId>vaadin-push</artifactId>
        <version>7.6.6</version>
    </dependency>
    -->
    
    
    com.vaadin
    

    然后,要使用Maven创建一个Vaadin项目,请选中此项

    Maven的主要目标是让开发人员理解 在最短的时间内完成开发工作的状态。 为了实现这一目标,有几个值得关注的领域: Maven试图处理以下问题:

  • 简化构建过程

  • 提供统一的构建系统

  • 提供优质工程资讯

  • 提供最佳实践开发指南

  • 允许透明地迁移到新功能

  • 资料来源:


    所提供的链接并不是描述Maven项目,而是描述如何在java中实现。但这并不意味着你不能使用Maven

    在maven中,web应用程序的项目结构如下

    Project Root
        |
        +-pom.xml
        +-src
           +-main
              +-java
              +-resources
              +-webapp
                  +-WEB-INF
                       +-web.xml
    
    • pom.xml
      是定义项目详细信息的地方,如组id、, 工件id和版本以及项目依赖关系(在您的案例中 瓦丁依赖性)
    • src\main\java
      文件夹将包含您的java 档案
    • src\main\resources
      文件夹将包含您需要的非java文件 类路径中的需要
    • src\main\webapp
      文件夹将包含该web html、css javascript等资源以及
      WEB-INF
      文件夹
    因此,您的项目结构将是

    Project Root
        |
        +-pom.xml
        +-src
           +-main
              +-java
              |   +-com
              |      +-example
              |          +-mycomponent
              |                 +-MyComponent.java
              |                 +-client
              |                     +-MyComponentConnector.java
              |                     +-MyComponentWidget.java
              +-resources
              |     +-com
              |        +-example
              |             +-mycomponent
              |                   +MyComponentWidgetset.gwt.xml
              +-webapp
                  +-WEB-INF
                       +-web.xml
    

    对于您的问题,pom.xml和web.xml是否相同?它不是针对maven项目对象模型的,它是web部署描述符。

    谢谢,我通常创建maven项目,所以也许我的问题应该是,我可以在maven项目中使用该指南吗?@antobbo我不这么认为,请检查:链接,我在答案中添加的这个链接好酷,所以可以“翻译”(因为没有更好的词)这个项目变成了一个专业的项目,很酷,谢谢,我会试试的