Résolu Bug compilation mod avec sourves externes
-
Bonjour
comme dis dans le titre je rencontre un bug de la part de gradlew quand je compile mon mod qui contient quelques “bibliothèque” externe a forge, comment résoudre ce bug ?
voici les log:
C:\Users\Killian\Desktop\forge 1.7.10>gradlew build
Powered By MCP:
http://mcp.ocean-labs.de/
Searge, ProfMobius, Fesh0r,
R4wk, ZeuX, IngisKahn, bspkrs
MCP Data version : unknown
:compileApiJava UP-TO-DATE
:processApiResources UP-TO-DATE
:apiClasses UP-TO-DATE
:sourceMainJava UP-TO-DATE
:compileJava
warning: [options] bootstrap class path not set in conjunction with -source 1.6
C:\Users\Killian\Desktop\forge 1.7.10\build\sources\java\mod\sao\common\ModForge
Sao.java:17: error: package org.apache.commons.net.ftp does not exist
import org.apache.commons.net.ftp.FTP;
^
C:\Users\Killian\Desktop\forge 1.7.10\build\sources\java\mod\sao\common\ModForge
Sao.java:18: error: package org.apache.commons.net.ftp does not exist
import org.apache.commons.net.ftp.FTPClient;
^
C:\Users\Killian\Desktop\forge 1.7.10\build\sources\java\mod\sao\common\ModForge
Sao.java:20: error: package com.enterprisedt.net.ftp does not exist
import com.enterprisedt.net.ftp.FileTransferClient;
^
C:\Users\Killian\Desktop\forge 1.7.10\build\sources\java\mod\sao\common\ModForge
Sao.java:21: error: package com.enterprisedt.util.debug does not exist
import com.enterprisedt.util.debug.Logger;
^
C:\Users\Killian\Desktop\forge 1.7.10\build\sources\java\mod\sao\common\ModForge
Sao.java:23: warning: FtpClient is internal proprietary API and may be removed i
n a future release
import sun.net.ftp.FtpClient;
^
C:\Users\Killian\Desktop\forge 1.7.10\build\sources\java\mod\sao\common\ModForge
Sao.java:24: warning: FtpClientProvider is internal proprietary API and may be r
emoved in a future release
import sun.net.ftp.FtpClientProvider;
^
C:\Users\Killian\Desktop\forge 1.7.10\build\sources\java\mod\sao\common\ModForge
Sao.java:167: error: cannot find symbol
FTPClient ftpClient = new FTPClient();
^
symbol: class FTPClient
location: class ModForgeSao
C:\Users\Killian\Desktop\forge 1.7.10\build\sources\java\mod\sao\common\ModForge
Sao.java:167: error: cannot find symbol
FTPClient ftpClient = new FTPClient();
^
symbol: class FTPClient
location: class ModForgeSao
C:\Users\Killian\Desktop\forge 1.7.10\build\sources\java\mod\sao\common\ModForge
Sao.java:173: error: cannot find symbol
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
^
symbol: variable FTP
location: class ModForgeSao
Note: C:\Users\Killian\Desktop\forge 1.7.10\build\sources\java\mod\sao\gui\GuiCu
stomMainMenu.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
7 errors
3 warnings
:compileJava FAILEDFAILURE: Build failed with an exception.
- What went wrong:
Execution failed for task ‘:compileJava’.
Compilation failed; see the compiler error output for details.
- Try:
Run with –stacktrace option to get the stack trace. Run with --info or --debug
option to get more log output.
BUILD FAILED
Total time: 5.563 secs
C:\Users\Killian\Desktop\forge 1.7.10>
- What went wrong:
-
Il faut ajouter la bibliothèque dans les dépendances du build.
Dans le fichier build.gradle il y a ça :dependencies {
// you may put jars on which you depend on in ./libs
// or you may define them like so…
//compile “some.group:artifact:version:classifier”
//compile “some.group:artifact:version”
// real examples
//compile ‘com.mod-buildcraft:buildcraft:6.0.8:dev’ // adds buildcraft to the dev env
//compile ‘com.googlecode.efficient-java-matrix-library:ejml:0.24’ // adds ejml to the dev env// for more info…
// http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html
// http://www.gradle.org/docs/current/userguide/dependency_management.html}
Tu as utilisé quelle bibliothèque ?
-
j’utilise commons-net et edtftp
-
C’est bizarre d’utiliser un accès ftp sur un mod, tu es conscient que n’importe qui peut dé-compiler ton mod et utiliser ton accès ftp comme il le veut ?
-
mon mod est destiné a quelque amis et le ftp est utiliser pour les mises a jours du mod
-
@‘Stevecraft’:
mon mod est destiné a quelque amis et le ftp est utiliser pour les mises a jours du mod
Je te conseille plutôt d’utiliser une interface web (comme avec php) pour télécharger les mises à jour, car ça reste tout de même dangereux.
-
l’accés ftp ne dispose que de droit en lecture
-
@‘Stevecraft’:
l’accés ftp ne dispose que de droit en lecture
Comme tu voudras, c’est pas mon mod de toute façon. Mais saches que si tu utilises une interface web, tu n’as pas besoin d’ajouter des librairies supplémentaires.
-
@‘robin4002’:
Il faut ajouter la bibliothèque dans les dépendances du build.
Dans le fichier build.gradle il y a ça :dependencies {
// you may put jars on which you depend on in ./libs
// or you may define them like so…
//compile “some.group:artifact:version:classifier”
//compile “some.group:artifact:version”
// real examples
//compile ‘com.mod-buildcraft:buildcraft:6.0.8:dev’ // adds buildcraft to the dev env
//compile ‘com.googlecode.efficient-java-matrix-library:ejml:0.24’ // adds ejml to the dev env// for more info…
// http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html
// http://www.gradle.org/docs/current/userguide/dependency_management.html}
Tu as utilisé quelle bibliothèque ?
donc comment je déclare mes dépendances
-
En effet il aurait été beaucoup plus prudant de faire un site web et de télécharger via ce site.
C’est ce que je fais pour nhg. Les mods sont ici, lorsque je commit un truc jenkins fait le build puis envoie les fichiers ici : http://dl.mcnanotech.fr/hungergames/installateur_dev/sync/mods/1.8/ ensuite l’installateur détecte le changement et les download.Normalement dans le build.gradle tu dois mettre ça dans la partie dependencies :
compile ‘commons-net:commons-net:2.0’
compile ‘edtftp:edtftp:1.2.1’D’après ce site : http://mvnrepository.com/artifact/commons-net/commons-net/2.0 , http://mvnrepository.com/artifact/edtftp/edtftp/1.2.1
-
il me met l’erreure suivante :
C:\Users\Killian\Desktop\forge 1.7.10>gradlew build **************************** Powered By MCP: http://mcp.ocean-labs.de/ Searge, ProfMobius, Fesh0r, R4wk, ZeuX, IngisKahn, bspkrs MCP Data version : unknown **************************** :compileApiJava UP-TO-DATE :processApiResources UP-TO-DATE :apiClasses UP-TO-DATE :sourceMainJava UP-TO-DATE :compileJava Download http://repo1.maven.org/maven2/commons-net/commons-net/2.0/commons-net-2 .0.pom Download http://repo1.maven.org/maven2/org/apache/commons/commons-parent/11/comm ons-parent-11.pom Download http://repo1.maven.org/maven2/commons-net/commons-net/2.0/commons-net-2 .0.jar warning: [options] bootstrap class path not set in conjunction with -source 1.6 C:\Users\Killian\Desktop\forge 1.7.10\build\sources\java\mod\sao\common\ModForge Sao.java:20: error: cannot find symbol import com.enterprisedt.net.ftp.FileTransferClient; ^ symbol: class FileTransferClient location: package com.enterprisedt.net.ftp C:\Users\Killian\Desktop\forge 1.7.10\build\sources\java\mod\sao\common\ModForge Sao.java:21: error: package com.enterprisedt.util.debug does not exist import com.enterprisedt.util.debug.Logger; ^ C:\Users\Killian\Desktop\forge 1.7.10\build\sources\java\mod\sao\common\ModForge Sao.java:23: warning: FtpClient is internal proprietary API and may be removed i n a future release import sun.net.ftp.FtpClient; ^ C:\Users\Killian\Desktop\forge 1.7.10\build\sources\java\mod\sao\common\ModForge Sao.java:24: warning: FtpClientProvider is internal proprietary API and may be r emoved in a future release import sun.net.ftp.FtpClientProvider; ^ Note: C:\Users\Killian\Desktop\forge 1.7.10\build\sources\java\mod\sao\gui\GuiCu stomMainMenu.java uses unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details. 2 errors 3 warnings :compileJava FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':compileJava'. > Compilation failed; see the compiler error output for details. * Try: Run with –stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. BUILD FAILED Total time: 24.078 secs C:\Users\Killian\Desktop\forge 1.7.10>
j’utilise les version 3.3 pour commons-net et le version 2.4.0 pour edtftpj
-
Tu as oublié des librairies ou tu les as mal référencé.
PS : pense à utiliser des spoiler.
-
le problème c’est qu’a part celle ci je n’en ai pas rajouté d’autres
et je ne sais pas faire un spolier -
Ça ne sert à rien de copier 50x le même log …
Could not GET ‘https://libraries.minecraft.net/edtftp/edtftp/2.4.0/edtftp-2.4.0.pom’. Received status code 403 from server: Forbidden
Tu as mit quoi dans ton build.gradle ?
Je t’ai dit de mettre ça :
@‘robin4002’:compile ‘commons-net:commons-net:2.0’
compile ‘edtftp:edtftp:1.2.1’Alors pourquoi tu mets du edtftp 2.4 ?!?
-
après avoir référencé les version correctes il me met toujours l’erreur:
Could not resolve edtftp:edtftp2.4.0
-
Envoie ton build.gradle, c’est pas normal.
-
@‘Stevecraft’:
après avoir référencé les version correctes il me met toujours l’erreur:
Could not resolve edtftp:edtftp2.4.0
essaie avec çà plutôt : edtftp:edtftp:2.4.0
-
-
même en mettant edtftp:edtftp:2.4.0 (j’avait oublié les : ) ca fait le même bug
-
@‘Stevecraft’:
même en mettant edtftp:edtftp:2.4.0 (j’avait oublié les : ) ca fait le même bug
Je ne penses pas que le groupe soit edtftp, non ? le pattern c’est group:name:version