• Blog
  • Info Support
  • Career
  • Training
  • International Group
  • Info Support
  • Blog
  • Career
  • Training
  • International Group
  • Search
logo InfoSupport
  • Latest blogs
  • Popular blogs
  • Experts
      • Alles
      • Bloggers
      • Speakers
  • Meet us
  • About us
    • nl
    • en
    • .NET
    • Advanced Analytics
    • Agile
    • Akka
    • Alexa
    • Algorithms
    • Api's
    • Architectuur
    • Artificial Intelligence
    • ATDD
    • Augmented Reality
    • AWS
    • Azure
    • Big Data
    • Blockchain
    • Business Intelligence
    • Cloud
    • Code Combat
    • Cognitive Services
    • Communicatie
    • Containers
    • Continuous Delivery
    • CQRS
    • Cyber Security
    • Dapr
    • Data
    • Data & Analystics
    • Data Science
    • Data Warehousing
    • Databricks
    • DevOps
    • Digital Days
    • Docker
    • eHealth
    • Enterprise Architecture
    • Hacking
    • Infrastructure & Hosting
    • Innovatie
    • Integration
    • Internet of Things
    • Java
    • Machine Learning
    • Microservices
    • Microsoft
    • Microsoft Bot Framework
    • Microsoft Data Platform
    • Mobile Development
    • Mutation Testing
    • Open source
    • Pepper
    • Power BI
    • Privacy & Ethiek
    • Python
    • Quality Assistance & Test
    • Quality Assurance & Test
    • Requirements Management
    • Scala
    • Scratch
    • Security
    • SharePoint
    • Software Architecture
    • Software development
    • Software Factory
    • SQL Server
    • SSL
    • Start-up
    • Startup thinking
    • Stryker
    • Test Quality
    • Testing
    • TLS
    • TypeScript
    • Various
    • Web Development
    • Web-scale IT
    • Xamarin
    • Alles
    • Bloggers
    • Speakers
Home » FindBugs 1.3.5: great new stuff
  • FindBugs 1.3.5: great new stuff

    • By Peter Hendriks
    • Java 13 years ago
    • Java 0 comments
    • Java Java
    FindBugs 1.3.5: great new stuff

    FindBugs 1.3.5 has been released yesterday. FindBugs is a static analysis tool that automatically finds common bugs in compiled Java code. It's open source, easy to set up and usually reports "real" potential issues in code. Most people I know who first see FindBugs in action love it: free extra feedback just after creating the code, without any extra effort from the developer (no tests, manual reviews), and these are sometimes real nasty bugs.

    FindBugs 1.3.5 adds some great new stuff into the mix. First of the all, the FindBugs Eclipse plug-in has got some updates to make it behave better in a large codebase. Previously, working on lots of code meant disabling the automatic features or else face endless waiting. In 1.3.5, the plug-in can only re-check the changed files in automatic mode, giving instant feedback without having the risk of long waiting periods. This is fantastic, as we can now finally enable the automatic mode in my current project, instead of the manual check that usually was run only after the FindBugs analysis on the build server reported extra bugs.

    Additionally, FindBugs adds some extra support for JSR-305: Annotations for Software Defect Detection. Basically, these annotations allow you to add extra information about the behavior of your code, like @NonNull if no null value is allowed. Tools like FindBugs can use these annotations to perform extra checks. Consider the following simple example:

     FindBugs example 1: detect nullpointer error based on annotation

    It's also great for documentation purpose as they provide readable and concrete info, and FindBugs can also find discrepancies between the annotations and the behavior of the actual code. In this case, FindBugs detects that either the annotation is incorrectly specifying that sayHello should not return null, or that the code itself is incorrect:

    FindBugs example 2: difference between annotation and actual code behavior 

    Please note that FindBugs does not need annotations for most of its checks, see the docs and this FindBugs presentation for more information. The JSR 305 annotations are just an extra addition that allow you to manually add extra information for static analysis tools to do their work. In Java 7, annotations like these will be even more powerful and flexible, allowing even more bugs to be found early and without effort. Prepare your code for the future and start using them!

     

    Share this

Peter Hendriks

View profile

Related IT training

Go to training website

Related Consultancy solutions

Go to infosupport.com

Related blogs

  • Do you know Java? Care to prove it?

    Do you know Java? Care to prove it? Hanno Embregts - 4 months ago

  • Deploy je JDK 11 applicatie op je eigen Java 17 runtime

    Deploy je JDK 11 applicatie op je eigen Java 17 runtime Jelle Spoelders - 6 months ago

  • Explaining software development to a class of 6-year ol…

    Explaining software development to a class of 6-year ol… Hanno Embregts - 7 months ago

Related downloads

  • Beslisboom voor een rechtmatig ‘kopietje productie’

  • Klantreferentie: Remmicom zet wetgeving om in intellige…

  • Klantreferentie RDW: Samenwerken voor veilig en vertrou…

  • Klantreferentie BeFrank: Strategische IT voor een innov…

  • Wie durft te experimenteren met data in de zorg?

Related videos

  • mijnverzekeringenopeenrij.nl

    mijnverzekeringenopeenrij.nl

  • Winnaar | Innovation Projects 2017

    Winnaar | Innovation Projects 2017

  • Explore | Info Support & HAN & Poliskluis

    Explore | Info Support & HAN & Poliskluis

  • LifeApps bij HagaZiekenhuis

    LifeApps bij HagaZiekenhuis

  • Info Support | Bedrijfsfilm

    Info Support | Bedrijfsfilm

Nieuwsbrief

* verplichte velden

Contact

  • Head office NL
  • Kruisboog 42
  • 3905 TG Veenendaal
  • T +31 318 552020
  • Call
  • Mail
  • Directions
  • Head office BE
  • Generaal De Wittelaan 17
  • bus 30 2800 Mechelen
  • T +32 15 286370
  • Call
  • Mail
  • Directions

Follow us

  • Twitter
  • Facebook
  • Linkedin
  • Youtube

Newsletter

Sign in

Extra

  • Media Library
  • Disclaimer
  • Algemene voorwaarden
  • ISHBS Webmail
  • Extranet
Beheer cookie toestemming
Deze website maakt gebruik van Functionele en Analytische cookies voor website optimalisatie en statistieken.
Functioneel
Altijd actief
De technische opslag of toegang is strikt noodzakelijk voor het legitieme doel het gebruik mogelijk te maken van een specifieke dienst waarom de abonnee of gebruiker uitdrukkelijk heeft gevraagd, of met als enig doel de uitvoering van de transmissie van een communicatie over een elektronisch communicatienetwerk.
Voorkeuren
De technische opslag of toegang is noodzakelijk voor het legitieme doel voorkeuren op te slaan die niet door de abonnee of gebruiker zijn aangevraagd.
Statistieken
De technische opslag of toegang die uitsluitend voor statistische doeleinden wordt gebruikt. De technische opslag of toegang die uitsluitend wordt gebruikt voor anonieme statistische doeleinden. Zonder dagvaarding, vrijwillige naleving door uw Internet Service Provider, of aanvullende gegevens van een derde partij, kan informatie die alleen voor dit doel wordt opgeslagen of opgehaald gewoonlijk niet worden gebruikt om je te identificeren.
Marketing
De technische opslag of toegang is nodig om gebruikersprofielen op te stellen voor het verzenden van reclame, of om de gebruiker op een website of over verschillende websites te volgen voor soortgelijke marketingdoeleinden.
Beheer opties Beheer diensten Beheer leveranciers Lees meer over deze doeleinden
Voorkeuren
{title} {title} {title}