如何使用gradle插件在netbeans中获取项目以查找本机库?

时间:2022-06-03 15:32:00

I am trying to figure out gradle and the netbeans plugin. I have easily been able to put together simple projects, but when trying to convert a project that uses JOGL to gradle I have run into problems. I can get it to compile, but when I try to get it to run, it does not. I assume it is not finding the native libraries.

我想弄清楚gradle和netbeans插件。我很容易将简单的项目放在一起,但是当我尝试将使用JOGL的项目转换为gradle时,我遇到了问题。我可以让它编译,但当我试图让它运行时,它不会。我假设它没有找到本机库。

Here is my build.gradle:

这是我的build.gradle:

apply plugin: 'java'
apply plugin: 'application'

sourceCompatibility = '1.6'

[compileJava, compileTestJava]*.options*.encoding = 'UTF-8'

// NetBeans will automatically add "run" and "debug" tasks relying on the                      
// "mainClass" property. You may however define the property prior executing                   
// tasks by passing a "-PmainClass=<QUALIFIED_CLASS_NAME>" argument.                           
//                                                                                             
// Note however, that you may define your own "run" and "debug" task if you                    
// prefer. In this case NetBeans will not add these tasks but you may rely on                  
// your own implementation.                                                                    
if (!hasProperty('mainClass')) {
    ext.mainClass = 'com.protocase.viewer.JDesigner'
}

repositories {
    mavenCentral()
    maven {
        url "https://repository.apache.org/content/repositories/snapshots/"
    }
}

dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.10'
    compile files('../logger/dist/logger.jar')
    compile files('../postalker/build/libs/postalker.jar')
    compile group: 'org.yaml', name: 'snakeyaml', version: '1.15+'
    compile group: 'commons-io', name: 'commons-io', version: '2.4+'
    compile group: 'gov.nist.math', name: 'jama', version: '1.0.3+'
    compile group: 'org.apache.commons', name: 'commons-imaging', version: '1.0-SNAPSHOT+'
    compile group: 'com.itextpdf', name: 'itextpdf', version: '5.5.5+'
    compile files('/home/vextorspace/.netbeans/8.0.2/jogl-runtime/jogl.jar')
    compile files('~/.netbeans/8.0.2/jogl-runtime/jogl.jar-natives-linux-amd64/libjogl_awt.so'\
, '~/.netbeans/8.0.2/jogl-runtime/jogl.jar-natives-linux-amd64/libjogl_cg.so', '~/.netbeans/8.\
0.2/jogl-runtime/jogl.jar-natives-linux-amd64/libjogl.so')
    runtime fileTree(dir: '~/.netbeans/8.0.2/jogl-runtime/jogl.jar-natives-linux-amd64/', incl\
ude: '*.so')
    compile files('~/.netbeans/8.0.2/gluegen-runtime/gluegen-rt.jar')
    runtime files('~/.netbeans/8.0.2/gluegen-runtime/gluegen-rt.jar-natives-linux-amd64/libglu\
egen-rt.so')
    compile files('libs/toxiclibscore.jar')
    compile group: 'org.apache.commons', name: 'commons-math3', version: '3.5+'
    compile group: 'commons-codec', name: 'commons-codec', version: '1.6'
    compile group: 'commons-logging', name: 'commons-logging', version: '1.1.3'
    compile group: 'org.apache.httpcomponents', name: 'httpcore', version: '4.3.3'
    compile group: 'org.apache.httpcomponents', name: 'httpclient', version: '4.3.6'
    compile group: 'org.apache.httpcomponents', name: 'httpmime', version: '4.3.6'
}

but when I try to run I get

但是当我试着奔跑时,我得到了

Executing: gradle run

:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: com/sun/gluegen/runtime/DynamicLookupHelper
        at java.lang.ClassLoader.defineClass1(Native Method)

Any help would be much appreciated!

任何帮助将非常感激!

Thank you

1 个解决方案

#1


Avoid tilde character in paths in your build script. It is interpreted by bash when you use it on command line and Gradle knows nothing about it.

避免在构建脚本中的路径中使用波形符。当您在命令行上使用它时,它由bash解释,Gradle对此一无所知。

#1


Avoid tilde character in paths in your build script. It is interpreted by bash when you use it on command line and Gradle knows nothing about it.

避免在构建脚本中的路径中使用波形符。当您在命令行上使用它时,它由bash解释,Gradle对此一无所知。