Ich habe derzeit einige Probleme mit Gradle und Git.Warum erstellt Gradle Dateien in einem anderen Git-Zweig?
Ich verwende den FXlancher, um meine Anwendung automatisch zu aktualisieren. Es wird mit dem Build-Prozess von Gradle konfiguriert. Hier ist die build.gradle
Datei von dem Stammprojekt:
group 'de.zerotask'
version '1.0-SNAPSHOT'
apply plugin: 'java'
sourceCompatibility = 1.8
subprojects {
apply plugin: 'java'
apply plugin: 'maven'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
group 'de.zerotask'
version = rootProject.version
}
repositories {
mavenCentral()
}
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.11'
compile project(':fx-framework')
compile project(':guice-injector')
compile 'no.tornado:fxlauncher:1.0.11'
}
// This part creates the app manifest needed for updating app
// Installer Filename without suffix
def appFilename = 'Taskflow'
// The JavaFX Application class name
def appMainClass = 'de.zerotask.taskflow.TaskflowApplication'
// Optional override to specify where the cached files are stored. Default is current working directory
def cacheDir = 'cache'
// Optional parameters to the application, will be embedded in the launcher and can be overriden on the command line
def appParameters = ''
// The Application vendor used by javapackager
def appVendor = 'Zerotask'
// The Application version used by javapackager
def appVersion = '1.0'
// Base URL where you will host the application artifacts
def appUrl = 'https://sirwindfield.github.io/taskflow/application-content/'
// Optional scp target for application artifacts hosted at the above url
def appDeployTarget = ''
jar.archiveName = "taskflow.jar"
task buildApp(dependsOn: ['copyDependencies', 'generateAppManifest', 'embedAppManifest'])
task copyDependencies {
dependsOn jar
configurations.runtime.resolvedConfiguration.resolvedArtifacts.each { artifact ->
project.copy {
from artifact.file
into 'build/libs'
rename { "${artifact.name}.${artifact.extension}" }
}
}
}
task generateAppManifest(type: JavaExec) {
main = 'fxlauncher.CreateManifest'
classpath = sourceSets.main.runtimeClasspath
args = [appUrl, appMainClass, 'build/libs', '--cache-dir=' + cacheDir, appParameters]
}
task embedAppManifest(type: Exec) {
mustRunAfter 'generateAppManifest'
workingDir 'build/libs'
commandLine 'jar', 'uf', 'fxlauncher.jar', 'app.xml'
}
task installer(type: Exec, dependsOn: 'buildApp') {
commandLine 'javapackager', '-deploy', '-native', '-outdir', 'installer', '-outfile', appFilename, '-srcdir', 'build/libs', '-srcfiles', 'fxlauncher.jar', '-appclass', 'fxlauncher.Launcher', '-name', "${rootProject.name}", '-title', "${rootProject.name}", '-vendor', "$appVendor", "-Bidentifier", "${rootProject.group}.${appFilename}", '-Bidentifier=' + project.group + '.' + appFilename, '-BappVersion=' + appVersion
}
task deployApp(type: Exec, dependsOn: 'embedAppManifest') {
workingDir 'build/libs'
// commandLine 'scp', '-r', '.', appDeployTarget
}
Das alles auf Master passieren sollte. Ich stellte sicher, dass ich die Filialen wechselte, bevor ich die buildApp
Aufgabe mit Gradle ausführte. Nachdem die Aufgaben beendet sind, bin ich zum Zweig gh-pages
gewechselt. Gradle hat auch hier das Verzeichnis build
zusammen mit dem Verzeichnis build
jedes Submoduls erstellt. Ich habe keine Ahnung warum. Ich dachte, dass Dateiänderungen nur auf dem aktuellen Zweig passieren sollten und nicht auf anderen.
Wenn mir jemand helfen könnte, dies zu beheben und mir zu erklären, warum es passiert, würde es mich wirklich glücklich machen!
aber diese Dateien sind meine Build-Verzeichnisse. Ich möchte sie nicht zum Ursprung drängen. Gibt es eine Möglichkeit, es zu konfigurieren, dass der Zweig gh-pages sie ignoriert und lokal entfernt? – SirWindfield
Sind diese Dateien für den Repo festgeschrieben? –