I haven't been able to get Jackpot to build... (If there is a better place
to ask about this, let me know)

I followed the instructions in cmdline/README.md

Using Ant v 1.10.12
Maven v 3.8.4
With JAVA_HOME set to JDK 8

I ran:

ant -DNETBEANS_PLATFORM=/Users/scott/dev/netbeans-13
-DJDK11=/Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home
-DJDK17=/Library/Java/JavaVirtualMachines/zulu-17.jdk/Contents/Home
 build-and-test

It chugged away for a bit but then failed a bunch of tests:

    [junit] Testcase:
testConfigurationFile(org.netbeans.modules.jackpot30.cmdline.CreateToolTest):
Caused an ERROR
    [junit] junit.framework.AssertionFailedError: expected:<0> but was:<1>
    [junit] java.io.IOException: junit.framework.AssertionFailedError:
expected:<0> but was:<1>
    [junit] at
org.netbeans.modules.jackpot30.cmdline.CreateToolTest.reallyRunCompiler(CreateToolTest.java:77)
    [junit] at
org.netbeans.modules.jackpot30.cmdline.MainTest.doRunCompiler(MainTest.java:1128)
    [junit] at
org.netbeans.modules.jackpot30.cmdline.MainTest.doRunCompiler(MainTest.java:1072)
    [junit] at
org.netbeans.modules.jackpot30.cmdline.MainTest.doRunCompiler(MainTest.java:1068)
    [junit] at
org.netbeans.modules.jackpot30.cmdline.MainTest.testConfigurationFile(MainTest.java:191)
    [junit] at org.netbeans.junit.NbTestCase.access$200(NbTestCase.java:77)
    [junit] at
org.netbeans.junit.NbTestCase$2.doSomething(NbTestCase.java:476)
    [junit] at org.netbeans.junit.NbTestCase$1Guard.run(NbTestCase.java:402)
    [junit] at java.lang.Thread.run(Thread.java:750)
    [junit] Caused by: junit.framework.AssertionFailedError: expected:<0>
but was:<1>
    [junit] at
org.netbeans.modules.jackpot30.cmdline.CreateToolTest.reallyRunCompiler(CreateToolTest.java:72)
    [junit]
    [junit]
    [junit] Testcase:
testWarningsAreErrors(org.netbeans.modules.jackpot30.cmdline.CreateToolTest):
FAILED
    [junit] expected:<[${workdir}/src/test/Test.java:4: warning:
[Usage_of_Collection_Map_size_equals_0] c.size() == 0 can be replaced with
c.isEmpty()
    [junit]         boolean b1 = c.size() == 0;
    [junit]                      ^
    [junit] ${workdir}/src/test/Test.java:5: warning:
[Usage_of_Collection_Map_size_equals_0] c.size() == 0 can be replaced with
c.isEmpty()
    [junit] boolean b2 = c.size() == 0;
    [junit]             ^
    [junit] ]> but was:<[]>

Basically a few like above, and then a lot more that looked like this:

    [junit] Testcase:
testParameterFile(org.netbeans.modules.jackpot30.cmdline.MainTest): Caused
an ERROR
    [junit] java.lang.NullPointerException
    [junit] java.lang.IllegalStateException: java.lang.NullPointerException
    [junit] at
org.netbeans.modules.jackpot30.cmdline.Main.compile(Main.java:357)
    [junit] at
org.netbeans.modules.jackpot30.cmdline.MainTest.reallyRunCompiler(MainTest.java:1155)
    [junit] at
org.netbeans.modules.jackpot30.cmdline.MainTest.doRunCompiler(MainTest.java:1128)
    [junit] at
org.netbeans.modules.jackpot30.cmdline.MainTest.doRunCompiler(MainTest.java:1072)
    [junit] at
org.netbeans.modules.jackpot30.cmdline.MainTest.doRunCompiler(MainTest.java:1068)
    [junit] at
org.netbeans.modules.jackpot30.cmdline.MainTest.testParameterFile(MainTest.java:879)
    [junit] at org.netbeans.junit.NbTestCase.access$200(NbTestCase.java:77)
    [junit] at
org.netbeans.junit.NbTestCase$2.doSomething(NbTestCase.java:476)
    [junit] at org.netbeans.junit.NbTestCase$1Guard.run(NbTestCase.java:402)
    [junit] at java.lang.Thread.run(Thread.java:750)
    [junit] Caused by: java.lang.NullPointerException
    [junit] at
org.netbeans.modules.java.hints.spiimpl.batch.BatchSearch.findOccurrencesLocal(BatchSearch.java:92)
    [junit] at
org.netbeans.modules.java.hints.spiimpl.batch.BatchSearch.findOccurrences(BatchSearch.java:85)
    [junit] at
org.netbeans.modules.jackpot30.cmdline.Main.handleGroup(Main.java:564)
    [junit] at
org.netbeans.modules.jackpot30.cmdline.Main.compile(Main.java:338)


Any hints are appreciated.

Regards,

Scott


On Thu, Jan 26, 2023 at 1:49 PM Ernie Rael <err...@raelity.com> wrote:

> On 23/01/26 10:25 AM, Scott Palmer wrote:
> > Well, yeah of course.. but is there a documented public API?
> > The maven plugin doesn't actually do refactoring, right?  It just
> > identifies hints?
>
> At: https://netbeans.apache.org/jackpot/
>
> > To apply the changes produced by the declarative hints, run
> > jackpot30:apply:
> > $ mvn -q jackpot30:apply && git diff
>
> Haven't tried it, but sure looks like it does the refactoring.
>
> -ernie
>
> > I was just wondering if there are notes somewhere that go a bit deeper
> than
> > showing how to use it from the command line or NetBeans.
> >
> > I did find a README in the cmdline folder.  So at least that's a start
> for
> > getting something to build.
> >
> > Thanks,
> >
> > Scott
> >
> > On Thu, Jan 26, 2023 at 11:22 AM Michael Bien <mbie...@gmail.com> wrote:
> >
> >> you check how the maven plugin is implemented and adopt it for gradle?
> >>
> >> -mbien
> >>
> >> On 26.01.23 17:13, Scott Palmer wrote:
> >>
> >> I don't use Maven if I can help it.
> >>
> >> But you misunderstand, I want to call Jackpot from my code to get it to
> >> perform some refactoring from control of my program. Getting a list of
> >> possible hints may happen later.
> >> Or perhaps a more general use... What would I do if I wanted to write a
> >> Gradle plugin to do the same as the Maven plugin? Assuming I know the
> >> Gradle side, how do I call the Jackpot methods?
> >>
> >> Regards,
> >>
> >> Scott
> >>
> >>
> >> On Thu, Jan 26, 2023 at 10:50 AM Michael Bien <mbie...@gmail.com>
> wrote:
> >>
> >>> On 26.01.23 16:01, Scott Palmer wrote:
> >>>> I wanted to experiment with Jackpot for a project I'm working on.  How
> >>>> dependent on the NetBeans Platform is the Jackpot code at
> >>>> https://github.com/apache/netbeans-jackpot30 ?
> >>>> Is there such a thing as a jackpot library jar that does not depend on
> >>>> NetBeans classes?
> >>>> If I wanted to make a standalone tool to do certain transformations
> on a
> >>>> Java code base where would I start?
> >>>>
> >>>> Thanks for any help you can provide,
> >>>>
> >>>> Scott
> >>>>
> >>> you should be able to use it from maven in your build:
> >>>
> >>>               <plugin>
> >>> <groupId>org.apache.netbeans.modules.jackpot30</groupId>
> >>> <artifactId>jackpot30-maven-plugin</artifactId>
> >>>                   <version>13.0</version>
> >>>                   <configuration>
> >>> <configurationFile>jackpot-settings.xml</configurationFile>
> >>> <failOnWarnings>true</failOnWarnings>
> >>>                   </configuration>
> >>>                   <executions>
> >>>                       <execution>
> >>>                           <id>jackpot</id>
> >>>                           <phase>compile</phase>
> >>>                           <goals>
> >>>                               <goal>analyze</goal>
> >>>                           </goals>
> >>>                       </execution>
> >>>                   </executions>
> >>>               </plugin>
> >>>
> >>>
> >>> I use it mostly from within NetBeans itself for refactoring or
> >>> inspection tasks with the help of the ".hint" files.
> >>>
> >>> I sometimes upload the inspections which I think are reusable or more
> >>> generic here:
> >>>
> >>> https://github.com/mbien/jackpot-inspections
> >>>
> >>> readme explains how to use hint files.
> >>>
> >>> -mbien
> >>>
> >>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@netbeans.apache.org
> For additional commands, e-mail: dev-h...@netbeans.apache.org
>
> For further information about the NetBeans mailing lists, visit:
> https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
>
>
>
>

Reply via email to