List Info

Thread: FindBugs




FindBugs
country flaguser name
Bulgaria
2008-04-24 10:00:14
Hi folks,

I would like to draw your attention to a very useful tool
for finding bugs in Java programs called
FindBugs[1]. It performs static analysis over Java byte code
and search for bugs. There is also an
Eclipse plug-in which provides integration with the Eclipse
platform and can be used for finding
bugs in Eclipse projects. You can take a look at [1] for
more details about the tool.

So I gave it a try over some of the TM plug-ins and I got
some interesting results. Here is a very
small excerpt of the results for org.eclipse.rse.core and
org.eclipse.rse.ui:

org.eclipse.rse.core
-----
H B ES: Comparison of String parameter using == or != in
org.eclipse.rse.internal.core.model.SystemRegistry.updateHos
t(IHost, IRSESystemType, String, String,
String, String, int)

H B ES: Comparison of String parameter using == or != in
org.eclipse.rse.internal.core.filters.SystemFilterPool.setOw
ningParentName(String)

H B ES: Comparison of String parameter using == or != in
org.eclipse.rse.core.subsystems.RemoteServerLauncher.setServ
erScript(String)

M C NP: Possible null pointer dereference of
SystemFilterPoolManager.name in
org.eclipse.rse.internal.core.filters.SystemFilterPoolManage
r.setName(String)


org.eclipse.rse.ui
-----
H C EC: Call to equals() comparing unrelated class and
interface in
org.eclipse.rse.internal.ui.view.SystemViewFilterStringAdapt
er.doDelete(Shell, Object, IProgressMonitor)

H B HE:
org.eclipse.rse.internal.ui.view.team.SystemTeamViewSubSyste
mConfigurationNode defines
equals and uses Object.hashCode()

M D BC: instanceof will always return true in
org.eclipse.rse.core.subsystems.SubSystemConfiguration.creat
eServerLauncher(IConnectorService),
since all
org.eclipse.rse.core.subsystems.RemoteServerLauncher are
instances of
org.eclipse.rse.core.model.ILabeledObject

M D BC: instanceof will always return true in
org.eclipse.rse.internal.ui.view.SystemView.getSelection(Con
trol), since all
org.eclipse.swt.widgets.TreeItem are instances of
org.eclipse.swt.widgets.TreeItem

M B Eq:
org.eclipse.rse.ui.open.SystemQuickOpenPageDescriptor
defines compareTo(Object) and uses
Object.equals()

While some of the problems can be classified as
"warnings" or "bad practice" there are
also such
that are real bugs. I think it will be useful for everyone
to check his stuff with this tool.

[1] http://findbugs.sour
ceforge.net/

Cheers,
Rado
_______________________________________________
dsdp-tm-dev mailing list
dsdp-tm-deveclipse.org

https://dev.eclipse.org/mailman/listinfo/dsdp-tm-dev

RE: FindBugs
country flaguser name
United States
2008-04-24 11:57:58
Thanks for the pointer, Rado.

I can only agree. We are using FIndBugs successfully
On all our commercial plugins. For RSE, I have always
Wanted to introduce it, but wanted to reduce the number
Of normal Eclipse Javac warnings before doing so.

But now seems the right time. APIs are frozen, so we
Need to focus on the implementations and get our code
Bug free.

There is only one caveat though: Some of the FindBugs
Warnings are false positives. And if somebody has
Analyzed an issue and found that it was not an issue
After all, there must be some common way of excluding
That issue from the warnings in the future, to ensure
That not the next developer invests time in checking
The same issue again.

At Wind River, we have some proprietery means to have
Markup in the code that supports filtering out 
FindBugs warnings. Rado do you see any such feature
In the Open Source FindBugs tool?

Whoever has a few cycles should download Findbugs
And check their code. Finding the bugs early with
The tool saves LOTS of time compared to having 
A user report it, look at bugzilla, reproduce it
Etc... I fully recommend that we all go for it.
Installing the plugin is super simple, just
Drop it into your dropins folder.

Rado can you give more instructions how to set up
A project for running findbugs and how to activate
It?

http://findbugs.sour
ceforge.net/

Thanks,
--
Martin Oberhuber, Senior Member of Technical Staff, Wind
River
Target Management Project Lead, DSDP PMC Member
http://www.eclipse.org
/dsdp/tm
 
 

> -----Original Message-----
> From: dsdp-tm-dev-bounceseclipse.org 
> [mailto:dsdp-tm-dev-bounceseclipse.org] On Behalf Of 
> Radoslav Gerganov
> Sent: Donnerstag, 24. April 2008 17:00
> To: Target Management developer discussions
> Subject: [dsdp-tm-dev] FindBugs
> 
> Hi folks,
> 
> I would like to draw your attention to a very useful
tool for 
> finding bugs in Java programs called
> FindBugs[1]. It performs static analysis over Java byte
code 
> and search for bugs. There is also an
> Eclipse plug-in which provides integration with the
Eclipse 
> platform and can be used for finding
> bugs in Eclipse projects. You can take a look at [1]
for more 
> details about the tool.
> 
> So I gave it a try over some of the TM plug-ins and I
got 
> some interesting results. Here is a very
> small excerpt of the results for org.eclipse.rse.core
and 
> org.eclipse.rse.ui:
> 
> org.eclipse.rse.core
> -----
> H B ES: Comparison of String parameter using == or !=
in
>
org.eclipse.rse.internal.core.model.SystemRegistry.updateHos
t(
> IHost, IRSESystemType, String, String,
> String, String, int)
> 
> H B ES: Comparison of String parameter using == or !=
in
>
org.eclipse.rse.internal.core.filters.SystemFilterPool.setOw
ni
> ngParentName(String)
> 
> H B ES: Comparison of String parameter using == or !=
in
>
org.eclipse.rse.core.subsystems.RemoteServerLauncher.setServ
er
> Script(String)
> 
> M C NP: Possible null pointer dereference of 
> SystemFilterPoolManager.name in
>
org.eclipse.rse.internal.core.filters.SystemFilterPoolManage
r.
> setName(String)
> 
> 
> org.eclipse.rse.ui
> -----
> H C EC: Call to equals() comparing unrelated class and
interface in
>
org.eclipse.rse.internal.ui.view.SystemViewFilterStringAdapt
er
> .doDelete(Shell, Object, IProgressMonitor)
> 
> H B HE: 
>
org.eclipse.rse.internal.ui.view.team.SystemTeamViewSubSyste
mC
> onfigurationNode defines
> equals and uses Object.hashCode()
> 
> M D BC: instanceof will always return true in
>
org.eclipse.rse.core.subsystems.SubSystemConfiguration.creat
eS
> erverLauncher(IConnectorService),
> since all 
> org.eclipse.rse.core.subsystems.RemoteServerLauncher
are instances of
> org.eclipse.rse.core.model.ILabeledObject
> 
> M D BC: instanceof will always return true in
>
org.eclipse.rse.internal.ui.view.SystemView.getSelection(Con
tr
> ol), since all
> org.eclipse.swt.widgets.TreeItem are instances of 
> org.eclipse.swt.widgets.TreeItem
> 
> M B Eq:
org.eclipse.rse.ui.open.SystemQuickOpenPageDescriptor 
> defines compareTo(Object) and uses
> Object.equals()
> 
> While some of the problems can be classified as
"warnings" or 
> "bad practice" there are also such
> that are real bugs. I think it will be useful for
everyone to 
> check his stuff with this tool.
> 
> [1] http://findbugs.sour
ceforge.net/
> 
> Cheers,
> Rado
> _______________________________________________
> dsdp-tm-dev mailing list
> dsdp-tm-deveclipse.org
> 
https://dev.eclipse.org/mailman/listinfo/dsdp-tm-dev
> 
_______________________________________________
dsdp-tm-dev mailing list
dsdp-tm-deveclipse.org

https://dev.eclipse.org/mailman/listinfo/dsdp-tm-dev

Re: FindBugs
country flaguser name
Bulgaria
2008-04-30 13:10:08
Hi Martin,

Installing FindBugs in Eclipse is pretty straightforward -
you can 
install it either from the update site [1] using the Update
Manager or 
download the plug-in from the project downloads page. When
installed you 
can scan the existing projects in the workspace by
right-click on the 
project and selecting FindBugs from the context menu. When
the scan is 
complete, the found problems can be browsed using the
FindBugs perspective.
You can also specify FindBugs options for each project from
the 
project's Properties page. There is support for filter files
which can 
be used for excluding false positives. However, maintaining
these filter 
files will require additional efforts from the committers. I
guess for 
now we can run the tool once and fix what we believe are
real bugs. For 
the long term we should decide whether or not to include
FindBugs in our 
daily work on TM.

Cheers,
Rado

[1] http://findbugs.cs
.umd.edu/eclipse

Oberhuber, Martin wrote:
> Thanks for the pointer, Rado.
>
> I can only agree. We are using FIndBugs successfully
> On all our commercial plugins. For RSE, I have always
> Wanted to introduce it, but wanted to reduce the
number
> Of normal Eclipse Javac warnings before doing so.
>
> But now seems the right time. APIs are frozen, so we
> Need to focus on the implementations and get our code
> Bug free.
>
> There is only one caveat though: Some of the FindBugs
> Warnings are false positives. And if somebody has
> Analyzed an issue and found that it was not an issue
> After all, there must be some common way of excluding
> That issue from the warnings in the future, to ensure
> That not the next developer invests time in checking
> The same issue again.
>
> At Wind River, we have some proprietery means to have
> Markup in the code that supports filtering out 
> FindBugs warnings. Rado do you see any such feature
> In the Open Source FindBugs tool?
>
> Whoever has a few cycles should download Findbugs
> And check their code. Finding the bugs early with
> The tool saves LOTS of time compared to having 
> A user report it, look at bugzilla, reproduce it
> Etc... I fully recommend that we all go for it.
> Installing the plugin is super simple, just
> Drop it into your dropins folder.
>
> Rado can you give more instructions how to set up
> A project for running findbugs and how to activate
> It?
>
> http://findbugs.sour
ceforge.net/
>
> Thanks,
> --
> Martin Oberhuber, Senior Member of Technical Staff,
Wind River
> Target Management Project Lead, DSDP PMC Member
> http://www.eclipse.org
/dsdp/tm
>  
>  
>
>   
>> -----Original Message-----
>> From: dsdp-tm-dev-bounceseclipse.org 
>> [mailto:dsdp-tm-dev-bounceseclipse.org] On Behalf Of 
>> Radoslav Gerganov
>> Sent: Donnerstag, 24. April 2008 17:00
>> To: Target Management developer discussions
>> Subject: [dsdp-tm-dev] FindBugs
>>
>> Hi folks,
>>
>> I would like to draw your attention to a very
useful tool for 
>> finding bugs in Java programs called
>> FindBugs[1]. It performs static analysis over Java
byte code 
>> and search for bugs. There is also an
>> Eclipse plug-in which provides integration with the
Eclipse 
>> platform and can be used for finding
>> bugs in Eclipse projects. You can take a look at
[1] for more 
>> details about the tool.
>>
>> So I gave it a try over some of the TM plug-ins and
I got 
>> some interesting results. Here is a very
>> small excerpt of the results for
org.eclipse.rse.core and 
>> org.eclipse.rse.ui:
>>
>> org.eclipse.rse.core
>> -----
>> H B ES: Comparison of String parameter using == or
!= in
>>
org.eclipse.rse.internal.core.model.SystemRegistry.updateHos
t(
>> IHost, IRSESystemType, String, String,
>> String, String, int)
>>
>> H B ES: Comparison of String parameter using == or
!= in
>>
org.eclipse.rse.internal.core.filters.SystemFilterPool.setOw
ni
>> ngParentName(String)
>>
>> H B ES: Comparison of String parameter using == or
!= in
>>
org.eclipse.rse.core.subsystems.RemoteServerLauncher.setServ
er
>> Script(String)
>>
>> M C NP: Possible null pointer dereference of 
>> SystemFilterPoolManager.name in
>>
org.eclipse.rse.internal.core.filters.SystemFilterPoolManage
r.
>> setName(String)
>>
>>
>> org.eclipse.rse.ui
>> -----
>> H C EC: Call to equals() comparing unrelated class
and interface in
>>
org.eclipse.rse.internal.ui.view.SystemViewFilterStringAdapt
er
>> .doDelete(Shell, Object, IProgressMonitor)
>>
>> H B HE: 
>>
org.eclipse.rse.internal.ui.view.team.SystemTeamViewSubSyste
mC
>> onfigurationNode defines
>> equals and uses Object.hashCode()
>>
>> M D BC: instanceof will always return true in
>>
org.eclipse.rse.core.subsystems.SubSystemConfiguration.creat
eS
>> erverLauncher(IConnectorService),
>> since all 
>>
org.eclipse.rse.core.subsystems.RemoteServerLauncher are
instances of
>> org.eclipse.rse.core.model.ILabeledObject
>>
>> M D BC: instanceof will always return true in
>>
org.eclipse.rse.internal.ui.view.SystemView.getSelection(Con
tr
>> ol), since all
>> org.eclipse.swt.widgets.TreeItem are instances of 
>> org.eclipse.swt.widgets.TreeItem
>>
>> M B Eq:
org.eclipse.rse.ui.open.SystemQuickOpenPageDescriptor 
>> defines compareTo(Object) and uses
>> Object.equals()
>>
>> While some of the problems can be classified as
"warnings" or 
>> "bad practice" there are also such
>> that are real bugs. I think it will be useful for
everyone to 
>> check his stuff with this tool.
>>
>> [1] http://findbugs.sour
ceforge.net/
>>
>> Cheers,
>> Rado
>> _______________________________________________
>> dsdp-tm-dev mailing list
>> dsdp-tm-deveclipse.org
>> 
https://dev.eclipse.org/mailman/listinfo/dsdp-tm-dev
>>
>>     
> _______________________________________________
> dsdp-tm-dev mailing list
> dsdp-tm-deveclipse.org
> 
https://dev.eclipse.org/mailman/listinfo/dsdp-tm-dev
>
>
>   

_______________________________________________
dsdp-tm-dev mailing list
dsdp-tm-deveclipse.org

https://dev.eclipse.org/mailman/listinfo/dsdp-tm-dev

RE: FindBugs
country flaguser name
United States
2008-04-30 11:47:53
Thanks Rado.

> project's Properties page. There is support for filter
files 
> which can be used for excluding false positives.
However, 
> maintaining these filter files will require additional
efforts
> from the committers. I 

Sigh. I'd really love to see them use Java Comment
Annotations
right in the code, instead of filter files. Plus an Eclipse
Quickfix (Ctrl+1) for "Filter false positive".

Are you in contact with the FindBugs developers such that
you
could suggest such enhancements?

Cheers,
--
Martin Oberhuber, Senior Member of Technical Staff, Wind
River
Target Management Project Lead, DSDP PMC Member
http://www.eclipse.org
/dsdp/tm
 
 

> -----Original Message-----
> From: dsdp-tm-dev-bounceseclipse.org 
> [mailto:dsdp-tm-dev-bounceseclipse.org] On Behalf Of 
> Radoslav Gerganov
> Sent: Mittwoch, 30. April 2008 20:10
> To: Target Management developer discussions
> Subject: Re: [dsdp-tm-dev] FindBugs
> 
> Hi Martin,
> 
> Installing FindBugs in Eclipse is pretty
straightforward - you can 
> install it either from the update site [1] using the
Update 
> Manager or 
> download the plug-in from the project downloads page.
When 
> installed you 
> can scan the existing projects in the workspace by
right-click on the 
> project and selecting FindBugs from the context menu.
When 
> the scan is 
> complete, the found problems can be browsed using the 
> FindBugs perspective.
> You can also specify FindBugs options for each project
from the 
> project's Properties page. There is support for filter
files 
> which can 
> be used for excluding false positives. However,
maintaining 
> these filter 
> files will require additional efforts from the
committers. I 
> guess for 
> now we can run the tool once and fix what we believe
are real 
> bugs. For 
> the long term we should decide whether or not to
include 
> FindBugs in our 
> daily work on TM.
> 
> Cheers,
> Rado
> 
> [1] http://findbugs.cs
.umd.edu/eclipse
> 
> Oberhuber, Martin wrote:
> > Thanks for the pointer, Rado.
> >
> > I can only agree. We are using FIndBugs
successfully
> > On all our commercial plugins. For RSE, I have
always
> > Wanted to introduce it, but wanted to reduce the
number
> > Of normal Eclipse Javac warnings before doing so.
> >
> > But now seems the right time. APIs are frozen, so
we
> > Need to focus on the implementations and get our
code
> > Bug free.
> >
> > There is only one caveat though: Some of the
FindBugs
> > Warnings are false positives. And if somebody has
> > Analyzed an issue and found that it was not an
issue
> > After all, there must be some common way of
excluding
> > That issue from the warnings in the future, to
ensure
> > That not the next developer invests time in
checking
> > The same issue again.
> >
> > At Wind River, we have some proprietery means to
have
> > Markup in the code that supports filtering out 
> > FindBugs warnings. Rado do you see any such
feature
> > In the Open Source FindBugs tool?
> >
> > Whoever has a few cycles should download Findbugs
> > And check their code. Finding the bugs early with
> > The tool saves LOTS of time compared to having 
> > A user report it, look at bugzilla, reproduce it
> > Etc... I fully recommend that we all go for it.
> > Installing the plugin is super simple, just
> > Drop it into your dropins folder.
> >
> > Rado can you give more instructions how to set up
> > A project for running findbugs and how to
activate
> > It?
> >
> > http://findbugs.sour
ceforge.net/
> >
> > Thanks,
> > --
> > Martin Oberhuber, Senior Member of Technical
Staff, Wind River
> > Target Management Project Lead, DSDP PMC Member
> > http://www.eclipse.org
/dsdp/tm
> >  
> >  
> >
> >   
> >> -----Original Message-----
> >> From: dsdp-tm-dev-bounceseclipse.org 
> >> [mailto:dsdp-tm-dev-bounceseclipse.org] On Behalf Of 
> >> Radoslav Gerganov
> >> Sent: Donnerstag, 24. April 2008 17:00
> >> To: Target Management developer discussions
> >> Subject: [dsdp-tm-dev] FindBugs
> >>
> >> Hi folks,
> >>
> >> I would like to draw your attention to a very
useful tool for 
> >> finding bugs in Java programs called
> >> FindBugs[1]. It performs static analysis over
Java byte code 
> >> and search for bugs. There is also an
> >> Eclipse plug-in which provides integration
with the Eclipse 
> >> platform and can be used for finding
> >> bugs in Eclipse projects. You can take a look
at [1] for more 
> >> details about the tool.
> >>
> >> So I gave it a try over some of the TM
plug-ins and I got 
> >> some interesting results. Here is a very
> >> small excerpt of the results for
org.eclipse.rse.core and 
> >> org.eclipse.rse.ui:
> >>
> >> org.eclipse.rse.core
> >> -----
> >> H B ES: Comparison of String parameter using
== or != in
> >>
org.eclipse.rse.internal.core.model.SystemRegistry.updateHos
t(
> >> IHost, IRSESystemType, String, String,
> >> String, String, int)
> >>
> >> H B ES: Comparison of String parameter using
== or != in
> >>
org.eclipse.rse.internal.core.filters.SystemFilterPool.setOw
ni
> >> ngParentName(String)
> >>
> >> H B ES: Comparison of String parameter using
== or != in
> >>
org.eclipse.rse.core.subsystems.RemoteServerLauncher.setServ
er
> >> Script(String)
> >>
> >> M C NP: Possible null pointer dereference of 
> >> SystemFilterPoolManager.name in
> >>
org.eclipse.rse.internal.core.filters.SystemFilterPoolManage
r.
> >> setName(String)
> >>
> >>
> >> org.eclipse.rse.ui
> >> -----
> >> H C EC: Call to equals() comparing unrelated
class and interface in
> >>
org.eclipse.rse.internal.ui.view.SystemViewFilterStringAdapt
er
> >> .doDelete(Shell, Object, IProgressMonitor)
> >>
> >> H B HE: 
> >>
org.eclipse.rse.internal.ui.view.team.SystemTeamViewSubSyste
mC
> >> onfigurationNode defines
> >> equals and uses Object.hashCode()
> >>
> >> M D BC: instanceof will always return true in
> >>
org.eclipse.rse.core.subsystems.SubSystemConfiguration.creat
eS
> >> erverLauncher(IConnectorService),
> >> since all 
> >>
org.eclipse.rse.core.subsystems.RemoteServerLauncher are 
> instances of
> >> org.eclipse.rse.core.model.ILabeledObject
> >>
> >> M D BC: instanceof will always return true in
> >>
org.eclipse.rse.internal.ui.view.SystemView.getSelection(Con
tr
> >> ol), since all
> >> org.eclipse.swt.widgets.TreeItem are instances
of 
> >> org.eclipse.swt.widgets.TreeItem
> >>
> >> M B Eq:
org.eclipse.rse.ui.open.SystemQuickOpenPageDescriptor 
> >> defines compareTo(Object) and uses
> >> Object.equals()
> >>
> >> While some of the problems can be classified
as "warnings" or 
> >> "bad practice" there are also such
> >> that are real bugs. I think it will be useful
for everyone to 
> >> check his stuff with this tool.
> >>
> >> [1] http://findbugs.sour
ceforge.net/
> >>
> >> Cheers,
> >> Rado
> >>
_______________________________________________
> >> dsdp-tm-dev mailing list
> >> dsdp-tm-deveclipse.org
> >> 
https://dev.eclipse.org/mailman/listinfo/dsdp-tm-dev
> >>
> >>     
> > _______________________________________________
> > dsdp-tm-dev mailing list
> > dsdp-tm-deveclipse.org
> > 
https://dev.eclipse.org/mailman/listinfo/dsdp-tm-dev
> >
> >
> >   
> 
> _______________________________________________
> dsdp-tm-dev mailing list
> dsdp-tm-deveclipse.org
> 
https://dev.eclipse.org/mailman/listinfo/dsdp-tm-dev
> 
_______________________________________________
dsdp-tm-dev mailing list
dsdp-tm-deveclipse.org

https://dev.eclipse.org/mailman/listinfo/dsdp-tm-dev

Re: FindBugs
country flaguser name
Bulgaria
2008-05-05 16:15:38
No, I am not in contact with the FindBug developers but I
will try to 
get in touch with them to see if they plan adding this
feature.

Rado

Oberhuber, Martin wrote:
> Thanks Rado.
>
>   
>> project's Properties page. There is support for
filter files 
>> which can be used for excluding false positives.
However, 
>> maintaining these filter files will require
additional efforts
>> from the committers. I 
>>     
>
> Sigh. I'd really love to see them use Java Comment
Annotations
> right in the code, instead of filter files. Plus an
Eclipse
> Quickfix (Ctrl+1) for "Filter false
positive".
>
> Are you in contact with the FindBugs developers such
that you
> could suggest such enhancements?
>
> Cheers,
> --
> Martin Oberhuber, Senior Member of Technical Staff,
Wind River
> Target Management Project Lead, DSDP PMC Member
> http://www.eclipse.org
/dsdp/tm
>  
>  
>
>   
>> -----Original Message-----
>> From: dsdp-tm-dev-bounceseclipse.org 
>> [mailto:dsdp-tm-dev-bounceseclipse.org] On Behalf Of 
>> Radoslav Gerganov
>> Sent: Mittwoch, 30. April 2008 20:10
>> To: Target Management developer discussions
>> Subject: Re: [dsdp-tm-dev] FindBugs
>>
>> Hi Martin,
>>
>> Installing FindBugs in Eclipse is pretty
straightforward - you can 
>> install it either from the update site [1] using
the Update 
>> Manager or 
>> download the plug-in from the project downloads
page. When 
>> installed you 
>> can scan the existing projects in the workspace by
right-click on the 
>> project and selecting FindBugs from the context
menu. When 
>> the scan is 
>> complete, the found problems can be browsed using
the 
>> FindBugs perspective.
>> You can also specify FindBugs options for each
project from the 
>> project's Properties page. There is support for
filter files 
>> which can 
>> be used for excluding false positives. However,
maintaining 
>> these filter 
>> files will require additional efforts from the
committers. I 
>> guess for 
>> now we can run the tool once and fix what we
believe are real 
>> bugs. For 
>> the long term we should decide whether or not to
include 
>> FindBugs in our 
>> daily work on TM.
>>
>> Cheers,
>> Rado
>>
>> [1] http://findbugs.cs
.umd.edu/eclipse
>>
>> Oberhuber, Martin wrote:
>>     
>>> Thanks for the pointer, Rado.
>>>
>>> I can only agree. We are using FIndBugs
successfully
>>> On all our commercial plugins. For RSE, I have
always
>>> Wanted to introduce it, but wanted to reduce
the number
>>> Of normal Eclipse Javac warnings before doing
so.
>>>
>>> But now seems the right time. APIs are frozen,
so we
>>> Need to focus on the implementations and get
our code
>>> Bug free.
>>>
>>> There is only one caveat though: Some of the
FindBugs
>>> Warnings are false positives. And if somebody
has
>>> Analyzed an issue and found that it was not an
issue
>>> After all, there must be some common way of
excluding
>>> That issue from the warnings in the future, to
ensure
>>> That not the next developer invests time in
checking
>>> The same issue again.
>>>
>>> At Wind River, we have some proprietery means
to have
>>> Markup in the code that supports filtering out

>>> FindBugs warnings. Rado do you see any such
feature
>>> In the Open Source FindBugs tool?
>>>
>>> Whoever has a few cycles should download
Findbugs
>>> And check their code. Finding the bugs early
with
>>> The tool saves LOTS of time compared to having

>>> A user report it, look at bugzilla, reproduce
it
>>> Etc... I fully recommend that we all go for
it.
>>> Installing the plugin is super simple, just
>>> Drop it into your dropins folder.
>>>
>>> Rado can you give more instructions how to set
up
>>> A project for running findbugs and how to
activate
>>> It?
>>>
>>> http://findbugs.sour
ceforge.net/
>>>
>>> Thanks,
>>> --
>>> Martin Oberhuber, Senior Member of Technical
Staff, Wind River
>>> Target Management Project Lead, DSDP PMC
Member
>>> http://www.eclipse.org
/dsdp/tm
>>>  
>>>  
>>>
>>>   
>>>       
>>>> -----Original Message-----
>>>> From: dsdp-tm-dev-bounceseclipse.org 
>>>> [mailto:dsdp-tm-dev-bounceseclipse.org] On Behalf Of 
>>>> Radoslav Gerganov
>>>> Sent: Donnerstag, 24. April 2008 17:00
>>>> To: Target Management developer
discussions
>>>> Subject: [dsdp-tm-dev] FindBugs
>>>>
>>>> Hi folks,
>>>>
>>>> I would like to draw your attention to a
very useful tool for 
>>>> finding bugs in Java programs called
>>>> FindBugs[1]. It performs static analysis
over Java byte code 
>>>> and search for bugs. There is also an
>>>> Eclipse plug-in which provides integration
with the Eclipse 
>>>> platform and can be used for finding
>>>> bugs in Eclipse projects. You can take a
look at [1] for more 
>>>> details about the tool.
>>>>
>>>> So I gave it a try over some of the TM
plug-ins and I got 
>>>> some interesting results. Here is a very
>>>> small excerpt of the results for
org.eclipse.rse.core and 
>>>> org.eclipse.rse.ui:
>>>>
>>>> org.eclipse.rse.core
>>>> -----
>>>> H B ES: Comparison of String parameter
using == or != in
>>>>
org.eclipse.rse.internal.core.model.SystemRegistry.updateHos
t(
>>>> IHost, IRSESystemType, String, String,
>>>> String, String, int)
>>>>
>>>> H B ES: Comparison of String parameter
using == or != in
>>>>
org.eclipse.rse.internal.core.filters.SystemFilterPool.setOw
ni
>>>> ngParentName(String)
>>>>
>>>> H B ES: Comparison of String parameter
using == or != in
>>>>
org.eclipse.rse.core.subsystems.RemoteServerLauncher.setServ
er
>>>> Script(String)
>>>>
>>>> M C NP: Possible null pointer dereference
of 
>>>> SystemFilterPoolManager.name in
>>>>
org.eclipse.rse.internal.core.filters.SystemFilterPoolManage
r.
>>>> setName(String)
>>>>
>>>>
>>>> org.eclipse.rse.ui
>>>> -----
>>>> H C EC: Call to equals() comparing
unrelated class and interface in
>>>>
org.eclipse.rse.internal.ui.view.SystemViewFilterStringAdapt
er
>>>> .doDelete(Shell, Object, IProgressMonitor)
>>>>
>>>> H B HE: 
>>>>
org.eclipse.rse.internal.ui.view.team.SystemTeamViewSubSyste
mC
>>>> onfigurationNode defines
>>>> equals and uses Object.hashCode()
>>>>
>>>> M D BC: instanceof will always return true
in
>>>>
org.eclipse.rse.core.subsystems.SubSystemConfiguration.creat
eS
>>>> erverLauncher(IConnectorService),
>>>> since all 
>>>>
org.eclipse.rse.core.subsystems.RemoteServerLauncher are 
>>>>         
>> instances of
>>     
>>>> org.eclipse.rse.core.model.ILabeledObject
>>>>
>>>> M D BC: instanceof will always return true
in
>>>>
org.eclipse.rse.internal.ui.view.SystemView.getSelection(Con
tr
>>>> ol), since all
>>>> org.eclipse.swt.widgets.TreeItem are
instances of 
>>>> org.eclipse.swt.widgets.TreeItem
>>>>
>>>> M B Eq:
org.eclipse.rse.ui.open.SystemQuickOpenPageDescriptor 
>>>> defines compareTo(Object) and uses
>>>> Object.equals()
>>>>
>>>> While some of the problems can be
classified as "warnings" or 
>>>> "bad practice" there are also
such
>>>> that are real bugs. I think it will be
useful for everyone to 
>>>> check his stuff with this tool.
>>>>
>>>> [1] http://findbugs.sour
ceforge.net/
>>>>
>>>> Cheers,
>>>> Rado
>>>>
_______________________________________________
>>>> dsdp-tm-dev mailing list
>>>> dsdp-tm-deveclipse.org
>>>> 
https://dev.eclipse.org/mailman/listinfo/dsdp-tm-dev
>>>>
>>>>     
>>>>         
>>>
_______________________________________________
>>> dsdp-tm-dev mailing list
>>> dsdp-tm-deveclipse.org
>>> 
https://dev.eclipse.org/mailman/listinfo/dsdp-tm-dev
>>>
>>>
>>>   
>>>       
>> _______________________________________________
>> dsdp-tm-dev mailing list
>> dsdp-tm-deveclipse.org
>> 
https://dev.eclipse.org/mailman/listinfo/dsdp-tm-dev
>>
>>     
> _______________________________________________
> dsdp-tm-dev mailing list
> dsdp-tm-deveclipse.org
> 
https://dev.eclipse.org/mailman/listinfo/dsdp-tm-dev
>
>
>   

_______________________________________________
dsdp-tm-dev mailing list
dsdp-tm-deveclipse.org

https://dev.eclipse.org/mailman/listinfo/dsdp-tm-dev

[1-5]

about | contact  Other archives ( Real Estate discussion Medical topics )