Error:(, ) java: package edu.umd.cs.findbugs.annotations does not exist using Lombok

If you have an error during compilation in IntelliJ Idea and/or maven/gradle

Error:(X, Y) java: package edu.umd.cs.findbugs.annotations does not exist

you've enabled FindBugs Suppress Warnings in lombok.config:

lombok.extern.findbugs.addSuppressFBWarnings = true

but you forgot to add FindBugs to your maven/gradle config...
You might either remove config directive or add FB dependency.

What’s the cause of your problem?

Most of exceptions has a few constructors including those with cause exception. But what if you have to throw an exception that has no cause in constructor? You try to survive:

 Exception cause = new Exception("I'm the cause!");
 SSLHandshakeException noCauseExc = new SSLHandshakeException(String.format("SSL problem: [%s]", cause.getMessage()));
 noCauseExc.printStackTrace();
...and you lose stacktrace which is crucial! There's a solution Throwable::initCause(). Check this code and have cause tailed to your exception

import javax.net.ssl.SSLHandshakeException;

/**
 * Created by bartek on 04.09.15.
 */
public class Cause  {

    public static void main(String[] args) {

        Exception cause = new Exception("I'm the cause!");
        SSLHandshakeException noCauseExc = new SSLHandshakeException(String.format("SSL problem: [%s]", cause.getMessage()));
        noCauseExc.printStackTrace();

        SSLHandshakeException withCauseExc = new SSLHandshakeException("Another SSL problem");
        withCauseExc.initCause(cause);
        withCauseExc.printStackTrace();
    }
}

BitBucket push/pull keeps asking me for password

It does it even if you've added your ssh key?! Really? So edit .git/config and change repo url from https to ssh. It should look like this url = git@bitbucket.org:your_login/your_project.git If you don't know the address then go to your bitbucket repo page and check SSH address on the project's Overvier tab. Don't forget to set up your name (bitbucket login) in [user] section. Refer git manual or just type $ git config user.name your_login $ git config user.email your_email