Um plug-in gradle para ajudar a trabalhar com projetos baseados em Java que fornecem bibliotecas nativas de apoio.
Este plug -in começou a resolver o simples problema de tornar as bibliotecas nativas armazenadas em arquivos de jar de dependência mais facilmente utilizáveis em projetos gradle, a saber, o projeto simples de jogo em que eu estava trabalhando na época. Quando parei de trabalhar no projeto do jogo, parecia que havia algum interesse no plug -in, então eu o mantive e tentei torná -lo um pouco melhor. Pessoalmente, eu não o uso desde alguns meses após o escrito, e tenho outros projetos que eu realmente uso, por isso estou listando esse projeto como abandonado.
Dito isto, tentarei mantê -lo com sucesso nas tendências atuais de Gradle e Groovy; No entanto, a maioria dos problemas relatados provavelmente não receberá muita atenção. Você pode enviar solicitações de puxar para correções e recursos e eu revisarei e agirei sobre eles em tempo hábil.
./gradlew clean build
Para adicionar o plug -in ao seu projeto, adicione o seguinte ao seu arquivo build.gradle (ou atualize o bloco buildscript , se ele já existir):
buildscript {
repositories {
maven {
url " https://plugins.gradle.org/m2/ "
}
}
dependencies {
classpath " gradle.plugin.com.stehno:gradle-natives:0.3.1 "
}
}
apply plugin : " com.stehno.natives "Como alternativa, você pode usar o novo bloco de definição de plug no Gradle 2.1 e além.
plugins {
id ' com.stehno.natives ' version ' 0.3.1 '
}O plug -in é compilado no Java 7.
Sem nenhuma configuração adicional, o plug -in encontrará todas as bibliotecas nativas em todas as configurações compile e runtime , para todas as plataformas e as desfalam no diretório build/natives do seu projeto. Você pode configurar esse comportamento adicionando um bloco natives ao seu arquivo build.gradle . O comportamento padrão tem a seguinte configuração:
natives {
configurations = [ ' compile ' , ' runtime ' ]
platforms = Platform . all()
outputDir = ' natives '
} Um fechamento libraries também pode ser adicionado para filtrar as bibliotecas resolvidas, como:
natives {
configurations = [ ' compile ' , ' runtime ' ]
platforms = Platform . all()
outputDir = ' natives '
libraries {
exclude = [ ' somelib.dll ' ]
}
}Existem duas tarefas fornecidas pelo Plguin:
listNatives - lista todas as bibliotecas nativas resolvidas pela configuração atual.includeNatives - inclui (cópias) as bibliotecas nativas resolvidas no diretório de saída configurado. Este plug -in resolve apenas bibliotecas nativas que estão no projeto de classe como dependências do projeto (dependências gradle, direto ou transitivo).