首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >java ice4j与nist-sdp包冲突

java ice4j与nist-sdp包冲突
EN

Stack Overflow用户
提问于 2018-11-07 12:12:53
回答 1查看 91关注 0票数 1

在我的项目中,下面的代码示例在没有ice4j包的情况下工作:

代码语言:javascript
复制
import javax.sdp.*;
public class Hello 
{
    public static void main(String[] args) throws Throwable
    {
        SdpFactory factory = SdpFactory.getInstance();
    }

}

但是如果我像下面这样包含ice4j包:

代码语言:javascript
复制
apply plugin: 'java-library'

repositories {
    google()
    jcenter()
}
jar {
    manifest {
        attributes 'Main-Class': 'Hello'
    }
    from {
        configurations.compile.collect{it.isDirectory()?it:zipTree(it)}
    }
}
dependencies {
    compile group: 'javax.sdp', name: 'nist-sdp', version: '1.0'
    compile group: 'org.jitsi', name: 'ice4j', version: '1.0'
}

sourceCompatibility = "7"
targetCompatibility = "7"

在gradle中添加ice4j包,然后构建没有问题,但如果使用以下命令运行:

代码语言:javascript
复制
java -jar build/libs/Hello.jar

报告的错误消息:

代码语言:javascript
复制
Exception in thread "main" java.lang.NoSuchMethodError: javax.sdp.SdpFactory.getInstance()Ljavax/sdp/SdpFactory;
    at Hello.main(Hello.java:7)

为什么由运行时传递的编译找不到方法?

EN

回答 1

Stack Overflow用户

发布于 2018-11-08 00:45:40

改用下面的代码:

代码语言:javascript
复制
SdpFactory factory = new NistSdpFactory();//SdpFactory.getInstance();

gradle更改为:

代码语言:javascript
复制
compile group: 'org.opentelecoms.sdp', name: 'java-sdp-nist-bridge', version: '1.1'
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53183476

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档