小编Nih*_* G.的帖子

如何从build.gradle中包含的外部jar的传递依赖项中排除包?

我在build.gradle中包含了以下依赖项:

testCompile group: 'com.xebialabs.restito', name: 'restito', version:'0.5.1'
Run Code Online (Sandbox Code Playgroud)

但是对于这个jar,其他依赖项如jersey-core-1.18.3.jar也包括在内.

现在我想要这个jersey jar但是它还有一个包javax.ws.rs.core,其中包含与我在build.gradle中明确包含的最新版本的javax.ws.rs.core冲突的类.

有什么办法可以只从传递依赖中排除特定的包而不是整个依赖.我是一个新手,所以如果使用了不正确的术语,请纠正我.

当我运行以下命令时:

gradlew dependencies --configuration testCompile
Run Code Online (Sandbox Code Playgroud)

它给了我以下依赖树.此处仅显示相关部分

testCompile - Compile classpath for source set 'test'.

+--- org.apache.cxf:cxf-rt-frontend-jaxrs:3.0.3
|    +--- org.apache.cxf:cxf-core:3.0.3 (*)
|    +--- javax.ws.rs:javax.ws.rs-api:2.0.1
|    +--- javax.annotation:javax.annotation-api:1.2
|    \--- org.apache.cxf:cxf-rt-transports-http:3.0.3 (*)
+--- org.apache.cxf:cxf-rt-rs-service-description:3.0.0-milestone1
|    \--- org.apache.cxf:cxf-rt-frontend-jaxrs:3.0.0-milestone1 -> 3.0.3 (*)
+--- org.codehaus.jackson:jackson-jaxrs:1.9.13
|    +--- org.codehaus.jackson:jackson-core-asl:1.9.13
|    \--- org.codehaus.jackson:jackson-mapper-asl:1.9.13
|         \--- org.codehaus.jackson:jackson-core-asl:1.9.13
+--- org.codehaus.jackson:jackson-mapper-asl:1.9.12 -> 1.9.13 (*)
+--- com.fasterxml.jackson.core:jackson-databind:2.4.1.2
|    +--- com.fasterxml.jackson.core:jackson-annotations:2.4.0
|    \--- com.fasterxml.jackson.core:jackson-core:2.4.1.1
\--- com.xebialabs.restito:restito:0.5.1
     +--- …
Run Code Online (Sandbox Code Playgroud)

gradle build.gradle

9
推荐指数
1
解决办法
9801
查看次数

通过MockMvc测试org.springframework.web.servlet.DispatcherServlet noHandlerFound

我使用Spring Mvc 4定义了一个休息服务,然后通过MockMvc测试它.当我使用Tomcat 7通过以下URL运行服务时,会返回正确的响应:

HTTP://本地主机:8080/SpringServiceSample /服务/问候/ Niharika

但是当我运行Junit测试时,我的日志中出现404错误:

INFO: FrameworkServlet '': initialization completed in 159 ms
May 18, 2015 12:36:02 PM org.springframework.web.servlet.DispatcherServlet noHandlerFound
WARNING: No mapping found for HTTP request with URI [/service/greeting] in DispatcherServlet with name ''
Run Code Online (Sandbox Code Playgroud)

以下是代码:

SpringServiceController.java

package com.test.springservice.controller;

import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/service/greeting")
public class SpringServiceController {
    @RequestMapping(value = "/{firstName}", method = RequestMethod.GET)
    @ResponseBody
    public String getGreeting(
        @PathVariable String firstName) {
        String result = "Hello " + firstName;
        return …
Run Code Online (Sandbox Code Playgroud)

spring-mvc mockmvc

5
推荐指数
1
解决办法
812
查看次数

如何定义JSON模式中的属性顺序?

我有以下java对象:

ProcessBean.java

import java.util.List;
import com.fasterxml.jackson.annotation.JsonRootName;

@JsonRootName(value = "process")
public class ProcessBean{
    private Integer id;
    private String name;
    private String description;
    private String user;
    private String executePermissions;
    private String createdDtm;
    private String updatedDtm;
    private Process tpProcess;
    private List<ProcessParamBean> processParameters;

    /* --------Getters and Setters ----------*/
}
Run Code Online (Sandbox Code Playgroud)

我需要找到该对象的JSON模式,该模式用于在UI上显示这些字段。UI中字段的顺序取决于所生成的JSON模式中属性的顺序。

我使用以下代码生成了架构:

数据规范

import com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility;
import com.fasterxml.jackson.annotation.PropertyAccessor;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.module.jsonSchema.JsonSchema;
import com.fasterxml.jackson.module.jsonSchema.factories.SchemaFactoryWrapper;

public class DataSpec {
    public static <T> String getDataSpec(Class<T> clazz) {
        ObjectMapper mapper = new ObjectMapper();
        mapper.setVisibility(PropertyAccessor.FIELD, Visibility.ANY);
        SchemaFactoryWrapper visitor …
Run Code Online (Sandbox Code Playgroud)

json jsonschema

3
推荐指数
1
解决办法
4769
查看次数

标签 统计

build.gradle ×1

gradle ×1

json ×1

jsonschema ×1

mockmvc ×1

spring-mvc ×1