<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: zillerium</title>
    <description>The latest articles on DEV Community by zillerium (@zillerium).</description>
    <link>https://dev.to/zillerium</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F202381%2Feaedb2ec-4213-4e0b-8dd4-1835c7c151ec.png</url>
      <title>DEV Community: zillerium</title>
      <link>https://dev.to/zillerium</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/zillerium"/>
    <language>en</language>
    <item>
      <title> Class not found - org/slf4j/LoggerFactory Gradle</title>
      <dc:creator>zillerium</dc:creator>
      <pubDate>Sat, 27 Jul 2019 13:34:47 +0000</pubDate>
      <link>https://dev.to/zillerium/class-not-found-org-slf4j-loggerfactory-gradle-3d2b</link>
      <guid>https://dev.to/zillerium/class-not-found-org-slf4j-loggerfactory-gradle-3d2b</guid>
      <description>&lt;p&gt;I am using Intellij and Gradle. When I run the jar file -&lt;/p&gt;

&lt;p&gt;trevor@trevor-Lenovo-YOGA-510-14AST:~/decent/Master5/out/artifacts/Master5_main_jar$ java -jar Master5.main.jar Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory at BlockgetConnection.(BlockgetConnection.java:12) at BlockgetAccount.getAccountByName(BlockgetAccount.java:31) at BlockgetStart.main(BlockgetStart.java:8) Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory at java.net.URLClassLoader.findClass(URLClassLoader.java:382) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 3 more&lt;/p&gt;

&lt;p&gt;I am not explicitly logging and I assume in the Decent logic there is a need to log somehow. I included my build.gradle. I have included some dependencies for logging. Any idea about the solution?&lt;/p&gt;

&lt;p&gt;Code (main class) -&lt;/p&gt;

&lt;p&gt;import ch.decent.sdk.model.Account;&lt;/p&gt;

&lt;p&gt;public class BlockgetStart {&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;public static void main(String[] args) {
    BlockgetAccount anAccount = new BlockgetAccount();
    Account myAcct = anAccount.getAccountByName("trevor3");
}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;}&lt;br&gt;
Instance of this class used -&lt;/p&gt;

&lt;p&gt;import ch.decent.sdk.DCoreApi;&lt;br&gt;
import ch.decent.sdk.crypto.Address;&lt;br&gt;
import ch.decent.sdk.crypto.Credentials;&lt;br&gt;
import ch.decent.sdk.model.Account;&lt;br&gt;
import ch.decent.sdk.model.AssetAmount;&lt;br&gt;
import ch.decent.sdk.model.Fee;&lt;br&gt;
import ch.decent.sdk.model.TransactionConfirmation;&lt;br&gt;
import org.springframework.beans.factory.annotation.Autowired;&lt;br&gt;
import org.springframework.stereotype.Component;&lt;br&gt;
import org.apache.logging.log4j.Logger;&lt;br&gt;
import org.apache.logging.log4j.LogManager;&lt;/p&gt;

&lt;p&gt;@Component&lt;br&gt;
public class BlockgetAccount {&lt;br&gt;
    // connection to accounts&lt;br&gt;
    private static final Long AMOUNT_OF_DCT_REQUIRED_FOR_CREATION = 100000L;&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;@Autowired
private BlockgetConnection connectionExample;
@Autowired
private BlockgetLogin loginExample;
@Autowired
private BlockgetGenerateKeys generateKeys;

/**
 * Example of getting any account by its name.
 *
 * @param accountName name of the account e.g. dw-account
 * @return Account instance for given account name
 */
public Account getAccountByName(String accountName) {

    connectionExample = new BlockgetConnection();
    final DCoreApi dcoreApi = connectionExample.connect();

    return dcoreApi
            .getAccountApi()
            .getByName(accountName)
            .blockingGet();
}

/**
 * Example of account creation with initial fee.
 *
 * @param newAccountName Unique account name that you wish to create.
 * @return Confirmation about transaction
 */
public TransactionConfirmation createAccount(String newAccountName) {

    final DCoreApi dcoreApi = connectionExample.connect();
    final Credentials credentials = loginExample.login();
    final Address newAccountPublicKey = generateKeys.generateKeys();
    final AssetAmount dctAssetAmount = new AssetAmount(AMOUNT_OF_DCT_REQUIRED_FOR_CREATION);
    final Fee initialFee = new Fee(dctAssetAmount.getAssetId(), AMOUNT_OF_DCT_REQUIRED_FOR_CREATION);

    return dcoreApi.getAccountApi().create(
            credentials,
            newAccountName,
            newAccountPublicKey,
            initialFee
    ).blockingGet();
}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;}&lt;/p&gt;

&lt;p&gt;Build.gradle -&lt;/p&gt;

&lt;p&gt;plugins {&lt;br&gt;
    id 'java'&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;group 'com.blockget.Master5'&lt;br&gt;
version '1.0-SNAPSHOT'&lt;/p&gt;

&lt;p&gt;sourceCompatibility = 1.8&lt;/p&gt;

&lt;p&gt;jar { manifest { attributes 'Main-Class': 'BlockgetStart' } }&lt;/p&gt;

&lt;p&gt;allprojects {&lt;br&gt;
    repositories {&lt;br&gt;
        mavenCentral()&lt;br&gt;
        maven { url '&lt;a href="https://jitpack.io"&gt;https://jitpack.io&lt;/a&gt;' }&lt;br&gt;
    }&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;dependencies {&lt;br&gt;
    // &lt;a href="https://mvnrepository.com/artifact/org.springframework/spring-context"&gt;https://mvnrepository.com/artifact/org.springframework/spring-context&lt;/a&gt;&lt;br&gt;
    // &lt;a href="https://mvnrepository.com/artifact/org.springframework/spring-context"&gt;https://mvnrepository.com/artifact/org.springframework/spring-context&lt;/a&gt;&lt;br&gt;
    compile group: 'org.springframework', name: 'spring-context', version: '5.1.8.RELEASE'&lt;br&gt;
    // &lt;a href="https://mvnrepository.com/artifact/org.slf4j/slf4j-ap"&gt;https://mvnrepository.com/artifact/org.slf4j/slf4j-ap&lt;/a&gt;&lt;br&gt;
    compile group: 'org.slf4j', name: 'slf4j-api', version: '1.7.26'&lt;br&gt;
// &lt;a href="https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-slf4j-impl"&gt;https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-slf4j-impl&lt;/a&gt;&lt;br&gt;
    compile group: 'org.apache.logging.log4j', name: 'log4j-slf4j-impl', version: '2.12.0'&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;testCompile group: 'junit', name: 'junit', version: '4.12'
implementation 'com.github.DECENTfoundation:DCoreKt-SDK:2.3.1'
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;}&lt;br&gt;
I get this for the jar breakdown -&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;trevor@trevor-Lenovo-YOGA-510 
14AST:~/decent/Master5/out/artifacts/Master5_main_jar$ jar tf 
Master5.main.jar 
META-INF/MANIFEST.MF
META-INF/
BlockgetNftMgr.class
BlockgetLogin.class
BlockgetConnection.class
BlockgetNft.class
BlockgetStart.class
BlockgetAccount.class
BlockgetGenerateKeys.class
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Any ideas show to solve?&lt;/p&gt;

</description>
      <category>orgslf4jloggerfactorygradle</category>
    </item>
  </channel>
</rss>
