J'ai écrit un simple contrat intelligent dans la solidité et j'ai essayé de le migrer avec la truffe.
$ truffle migrate
Compiling .\contracts\Election.sol...
Compiling .\contracts\Migrations.sol...
/D/ethereum/electiondemo/contracts/Migrations.sol:1:1: SyntaxError: Source file requires different compiler version (current compiler is 0.5.0+commit.1d4f565a.Emscripten.clang - note that nightly builds are considered to be strictly less than the released version
pragma solidity ^0.4.24;
^----------------------^
Compilation failed. See above.`enter code here`
Truffle v5.0.0 (core: 5.0.0)
Node v8.11.1
La version Solidity est 0.5.0 . Veuillez trouver ci-dessous le code du contrat intelligent:
pragma solidity ^0.5.0;
contract Election {
// Read/write candidate
string public candidate;
// Constructor
constructor ( ) public {
candidate = "Candidate 1";
}
}
Vous avez la solution: In truffle.js. Vous devez spécifier la version de solidité
module.exports = {
// See <http://truffleframework.com/docs/advanced/configuration>
// for more about customizing your Truffle configuration!
networks: {
development: {
Host: "127.0.0.1",
port: 7545,
network_id: "*" // Match any network id
}
},
compilers: {
solc: {
**version: "0.4.24"** // ex: "0.4.20". (Default: Truffle's installed solc)
}
}
};
Même besoin de donner dans votre contrat intelligent
** Ajouter la ligne ci-dessous à truffle.js **{ compilers: {
solc: {
version: "0.4.24" // ex: "0.4.20". (Default: Truffle's installed solc)
}
} }
néanmoins, une erreur s’invite .. Impossible de se connecter à votre client Ethereum. Veuillez vérifier que votre client Ethereum: - est en cours d'exécution - accepte les connexions RPC (c'est-à-dire que l'option "--rpc" est utilisée dans geth) - est accessible sur le réseau - est correctement configuré dans votre fichier de configuration Truffle (truffle.js)
Truffle v5.0.1 (noyau: 5.0.1) Node v8.11.3
Votre contrat de migration (Migrations.sol) nécessite 0.4.24.
Accédez à votre contrat de migration et réglez votre dépendance sur 0,5 ou la dépendance de vos contrats principaux sur 0,4. *