gpt4 book ai didi

java - 为REST-Web服务创建Gradle文件

转载 作者:行者123 更新时间:2023-12-03 06:06:55 26 4
gpt4 key购买 nike

我是新手,想要为REST服务创建构建文件。阅读gradle主页和其他页面上的一些介绍后,我使用gradle init --type=java-project命令启动了一个新项目,因为我的服务是基于Java的。项目的结构已创建,我想将.class文件插入目录。这是我的第一个问题:我不知道这种项目的正确结构。之后,我重点介绍了我的依赖项,并对其进行了补充。一旦我要构建项目,就会发生错误,这与将jersey作为技术使用有关。如果我用eclipse编译我的服务,它可以很好地工作,所以我的代码也可以。

所以我的两个问题是:

如何创建适当的文件结构?

如何解决Servlet / WAR编译问题

这是我在Eclipse中的项目结构:

RestWebService
|--Java Resources
| |--src
| |--com.name.restproject.rest
| | |--WebController.java //contains the jersey REST service
| |--com.name.restproject.service
| |--ServiceUtil.java //contains some util methods
|--Libraries
| |--Apache Tomcat v7
| |--asm-3.3.1.jar
| |--EAR Libraries
| |--gson-2.5.jar
| |--jersey-bundle-1.14.jar
| |--JRE SYSTEM Library
| |--json-20151123.jar
| |--Web App Libraries
|--JavaScript Resources
|--build
|--WebContent
|--META-INF
| |--MANIFEST.MF
|--WEB-INF
|--lib
|--fileName.properties //File with Data for ServiceUtil.java
|--configFile.xml //File with Confc for ServiceUtil.java
|--web.xml //Config for the REST paths

我没有计划将WEB-INF目录中的两个文件放在何处。我已将结构放置在项目文件夹 /src/main/java/com/name/restproject

这是项目的gradle文件

build.gradle
apply plugin: 'java'
apply plugin: 'war'

// In this section you declare where to find the dependencies of your project
repositories {
// Use 'jcenter' for resolving your dependencies.
// You can declare any Maven/Ivy/file repository here.
mavenCentral()
}

// In this section you declare the dependencies for your production and test code
dependencies {
// The production code uses the SLF4J logging API at compile time
compile group: 'com.google.code.gson', name: 'gson-parent', version: '2.6'
compile group: 'asm', name: 'asm-parent', version: '3.3.1'
compile group: 'com.sun.jersey.glassfish.v3.osgi', name: 'jersey-gf-bundle', version: '1.1.4'
compile group: 'org.json', name: 'json', version: '20151123'


// Declare the dependency for your favourite test framework you want to use in your tests.
// TestNG is also supported by the Gradle Test task. Just change the
// testCompile dependency to testCompile 'org.testng:testng:6.8.1' and add
// 'test.useTestNG()' to your build script.
testCompile 'junit:junit:4.12'
}

最佳答案

如果您想使用Gradle构建来创建REST Web服务,建议您使用Spring Boot REST

Spring Boot-构建RESTful Web服务: http://spring.io/guides/gs/rest-service/

它已经包含Gradle构建:https://github.com/spring-guides/gs-rest-service/blob/master/initial/build.gradle

另外,如果要构建WAR而不是JAR(这是默认的构建配置),则可以遵循以下文档:http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#build-tool-plugins-gradle-packaging

关于java - 为REST-Web服务创建Gradle文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38225006/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com