Building JMeter from source with Java 8

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

Building JMeter from source with Java 8

Tong Sun
Hi,

I'm having trouble building JMeter from source and I have no idea why.
I'm using Java 8.

$ groovy -v
Groovy Version: 3.0.3 JVM: 1.8.0_261 Vendor: Oracle Corporation OS: Mac OS X

$ gradlew -v

------------------------------------------------------------
Gradle 6.7
------------------------------------------------------------

Build time:   2020-10-14 16:13:12 UTC
Revision:     312ba9e0f4f8a02d01854d1ed743b79ed996dfd3

Kotlin:       1.3.72
Groovy:       2.5.12
Ant:          Apache Ant(TM) version 1.10.8 compiled on May 10 2020
JVM:          1.8.0_261 (Oracle Corporation 25.261-b12)
OS:           Mac OS X 10.15.7 x86_64

I got the source from
https://jmeter.apache.org/download_jmeter.cgi
https://apache.claz.org//jmeter/source/apache-jmeter-5.4.1_src.zip

The error is:

FAILURE: Build completed with 2 failures.

1: Task failed with an exception.
-----------
* What went wrong:
Execution failed for task ':buildSrc:autostyleKotlinGradleCheck'.
> The following files have format violations:
    build.gradle.kts
      @@ -1,77 +1,77 @@
      -/*\r\n

I've published the full build scan at
https://gradle.com/s/73bo65dlralmy

My work is blocked because of this -- I must get the jmeter build from
source. I know, it's weird, but that's what is required from my work.

Any help appreciated. Thanks

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Building JMeter from source with Java 8

Tong Sun
On Fri, Mar 5, 2021 at 9:03 AM Tong Sun <[hidden email]> wrote:

>
> Hi,
>
> I'm having trouble building JMeter from source and I have no idea why.
> I'm using Java 8.
>
> $ groovy -v
> Groovy Version: 3.0.3 JVM: 1.8.0_261 Vendor: Oracle Corporation OS: Mac OS X
>
> $ gradlew -v
>
> ------------------------------------------------------------
> Gradle 6.7
> ------------------------------------------------------------
>
> Build time:   2020-10-14 16:13:12 UTC
> Revision:     312ba9e0f4f8a02d01854d1ed743b79ed996dfd3
>
> Kotlin:       1.3.72
> Groovy:       2.5.12
> Ant:          Apache Ant(TM) version 1.10.8 compiled on May 10 2020
> JVM:          1.8.0_261 (Oracle Corporation 25.261-b12)
> OS:           Mac OS X 10.15.7 x86_64
>
> I got the source from
> https://jmeter.apache.org/download_jmeter.cgi
> https://apache.claz.org//jmeter/source/apache-jmeter-5.4.1_src.zip
>
> The error is:
>
> FAILURE: Build completed with 2 failures.
>
> 1: Task failed with an exception.
> -----------
> * What went wrong:
> Execution failed for task ':buildSrc:autostyleKotlinGradleCheck'.
> > The following files have format violations:
>     build.gradle.kts
>       @@ -1,77 +1,77 @@
>       -/*\r\n
>
> I've published the full build scan at
> https://gradle.com/s/73bo65dlralmy

$ ./gradlew autostyleApply -PmaxCheckMessageLines=50
-PmaxFilesToList=10 -PminLinesPerFile=4
> Task :buildSrc:autostyleKotlinGradleCheck FAILED
> Task :buildSrc:batchtest:autostyleKotlinCheck FAILED

FAILURE: Build completed with 2 failures.

1: Task failed with an exception.
-----------
* What went wrong:
Execution failed for task ':buildSrc:autostyleKotlinGradleCheck'.
> The following files have format violations:
    build.gradle.kts
      @@ -1,77 +1,77 @@
      -/*\r\n
      - * Licensed to the Apache Software Foundation (ASF) under one or more\r\n
...

2: Task failed with an exception.
-----------
* What went wrong:
Execution failed for task ':buildSrc:batchtest:autostyleKotlinCheck'.
> The following files have format violations:
    subprojects/batchtest/src/main/kotlin/org/apache/jmeter/buildtools/batchtest/BatchTest.kt
. . .

  Violations also present in:
    subprojects/batchtest/src/main/kotlin/org/apache/jmeter/buildtools/batchtest/BatchTestServer.kt
    subprojects/batchtest/src/main/kotlin/org/apache/jmeter/buildtools/batchtest/BatchtestPlugin.kt
    subprojects/batchtest/src/main/kotlin/org/apache/jmeter/buildtools/batchtest/WriterExtensions.kt
  You might want to adjust -PmaxCheckMessageLines=50
-PmaxFilesToList=10 -PminLinesPerFile=4 to see more violations
  Run './gradlew autostyleApply' to fix the violations.

I've tried
./gradlew autostyleApply -PmaxCheckMessageLines=50 -PmaxFilesToList=10
-PminLinesPerFile=4
several times and it always returns errors like this.

> My work is blocked because of this -- I must get the jmeter build from
> source. I know, it's weird, but that's what is required from my work.
>
> Any help appreciated. Thanks

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Building JMeter from source with Java 8

glinius@live.com
In reply to this post by Tong Sun
I think these "autostyleApply -PmaxCheckMessageLines=50 -PmaxFilesToList=10
-PminLinesPerFile=4" profiles are causing troubles, you should be able to
build JMeter like:


> gradlew -x test build -q





--
Sent from: http://www.jmeter-archive.org/JMeter-User-f512775.html

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Building JMeter from source with Java 8

Felix Schumacher
In reply to this post by Tong Sun


Am 5. März 2021 15:03:45 MEZ schrieb Tong Sun <[hidden email]>:

>Hi,
>
>I'm having trouble building JMeter from source and I have no idea why.
>I'm using Java 8.
>
>$ groovy -v
>Groovy Version: 3.0.3 JVM: 1.8.0_261 Vendor: Oracle Corporation OS: Mac
>OS X
>
>$ gradlew -v
>
>------------------------------------------------------------
>Gradle 6.7
>------------------------------------------------------------
>
>Build time:   2020-10-14 16:13:12 UTC
>Revision:     312ba9e0f4f8a02d01854d1ed743b79ed996dfd3
>
>Kotlin:       1.3.72
>Groovy:       2.5.12
>Ant:          Apache Ant(TM) version 1.10.8 compiled on May 10 2020
>JVM:          1.8.0_261 (Oracle Corporation 25.261-b12)
>OS:           Mac OS X 10.15.7 x86_64
>
>I got the source from
>https://jmeter.apache.org/download_jmeter.cgi
>https://apache.claz.org//jmeter/source/apache-jmeter-5.4.1_src.zip

The zip file has windows style line endings in its sources. A better way to checkout the sources is via git or use the tar.gz download.

The tar file should have Unix style line endings, which should match macos better.

Felix

>
>The error is:
>
>FAILURE: Build completed with 2 failures.
>
>1: Task failed with an exception.
>-----------
>* What went wrong:
>Execution failed for task ':buildSrc:autostyleKotlinGradleCheck'.
>> The following files have format violations:
>    build.gradle.kts
>      @@ -1,77 +1,77 @@
>      -/*\r\n
>
>I've published the full build scan at
>https://gradle.com/s/73bo65dlralmy
>
>My work is blocked because of this -- I must get the jmeter build from
>source. I know, it's weird, but that's what is required from my work.
>
>Any help appreciated. Thanks
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: [hidden email]
>For additional commands, e-mail: [hidden email]

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Building JMeter from source with Java 8

Tong Sun
In reply to this post by glinius@live.com
On Fri, Mar 5, 2021 at 9:38 AM [hidden email] <[hidden email]> wrote:
>
> I think these "autostyleApply -PmaxCheckMessageLines=50 -PmaxFilesToList=10
> -PminLinesPerFile=4" profiles are causing troubles, you should be able to
> build JMeter like:
>
> > gradlew -x test build -q

Thanks glinius, that actually answered my next question, how to
overcome the failed tests.

So, to summarize it up,

- use the tar.gz download as suggested by Felix
- and build with above command to avoid the failed tests

Now I have a jmeter-5.4.1-SNAPSHOT.jar file.

So the next question regarding building JMeter from source -- how to
make use of the build result?

I did

rsync -ua /Applications/apache-jmeter-5.3/bin/
/Applications/apache-jmeter-5.4/bin/

and copied my build/libs/jmeter-5.4.1-SNAPSHOT.jar as
/Applications/apache-jmeter-5.4/bin/ApacheJMeter.jar

but when invoking it with,
/Applications/apache-jmeter-5.4/bin/jmeter

I got
no main manifest attribute, in
/Applications/apache-jmeter-5.4/bin/ApacheJMeter.jar

thanks

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Building JMeter from source with Java 8

Vladimir Sitnikov
Hi,

Have you tried ./gradlew runGui ?
An alternative option is to use ./gradlew createDist which would copy all
the dependencies, so you could launch JMeter with bin/jmeter.

Please find the commands at
https://jmeter.apache.org/usermanual/jmeter_tutorial.html#building

Vladimir
Reply | Threaded
Open this post in threaded view
|

[OT] Using JMeter source with Java 15 (openjdk)

Tong Sun
On Fri, Mar 5, 2021 at 10:53 AM Vladimir Sitnikov
<[hidden email]> wrote:
>
> Hi,
>
> Have you tried ./gradlew runGui ?
> An alternative option is to use ./gradlew createDist which would copy all
> the dependencies, so you could launch JMeter with bin/jmeter.
>
> Please find the commands at
> https://jmeter.apache.org/usermanual/jmeter_tutorial.html#building

Thanks Vladimir,

It works, for my Java 8.

However, my JMeter scripts need Java 15, so I installed Java 15, following
 https://mkyong.com/java/how-to-install-java-on-mac-osx/

However this is what I got:
(sorry, just realized that it is not jmeter's problem but Java15's, so
marking OT in subject, as I have nowhere to turn to for help, because
searching for that error message didn't give me much good hits)

$ /Applications/apache-jmeter-5.4/bin/jmeter
/Applications/apache-jmeter-5.4/bin/jmeter: line 128: [: : integer
expression expected
dyld: Library not loaded: @rpath/libjli.dylib
  Referenced from:
/Library/Java/JavaVirtualMachines/openjdk.jdk/Contents/Home/bin/java
  Reason: image not found
/Applications/apache-jmeter-5.4/bin/jmeter: line 199: 48130 Abort
trap: 6           "$JAVA_HOME/bin/java" $ARGS $JVM_ARGS $JMETER_OPTS
-jar "$PRGDIR/ApacheJMeter.jar" "$@"

Here is more info, that I think relevant:

$ sed -n '128p' /Applications/apache-jmeter-5.4/bin/jmeter
if [ "$CURRENT_VERSION" -gt "$MINIMAL_VERSION" ]; then

$ type java
java is hashed (/usr/local/opt/openjdk/bin/java)

$ java -version
openjdk version "15.0.1" 2020-10-20
OpenJDK Runtime Environment (build 15.0.1+9)
OpenJDK 64-Bit Server VM (build 15.0.1+9, mixed mode, sharing)

$ /usr/libexec/java_home
/Library/Java/JavaVirtualMachines/openjdk.jdk/Contents/Home

$ echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/openjdk.jdk/Contents/Home

$ ls -l /Library/Java/JavaVirtualMachines/openjdk.jdk/Contents/Home/
total 4
drwxr-xr-x 32 t admin 1024 2021-01-18 18:43 bin
drwxr-xr-x  7 t admin  224 2021-01-18 18:43 conf
drwxr-xr-x  5 t admin  160 2021-01-18 18:43 demo
drwxr-xr-x  9 t admin  288 2021-01-18 18:43 include
drwxr-xr-x 71 t admin 2272 2021-01-18 18:43 jmods
drwxr-xr-x 71 t admin 2272 2021-01-18 18:43 legal
drwxr-xr-x 56 t admin 1792 2021-01-18 18:43 lib
drwxr-xr-x  3 t admin   96 2021-01-18 18:43 man
-rw-r--r--  1 t admin 1152 2021-01-18 18:43 release

$ groovy -v
dyld: Library not loaded: @rpath/libjli.dylib
  Referenced from:
/Library/Java/JavaVirtualMachines/openjdk.jdk/Contents/Home/bin/java
  Reason: image not found
Abort trap: 6

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: [OT] Using JMeter source with Java 15 (openjdk)

Tong Sun
On Fri, Mar 5, 2021 at 2:39 PM Tong Sun <[hidden email]> wrote:

>
> On Fri, Mar 5, 2021 at 10:53 AM Vladimir Sitnikov
> <[hidden email]> wrote:
> >
> > Hi,
> >
> > Have you tried ./gradlew runGui ?
> > An alternative option is to use ./gradlew createDist which would copy all
> > the dependencies, so you could launch JMeter with bin/jmeter.
> >
> > Please find the commands at
> > https://jmeter.apache.org/usermanual/jmeter_tutorial.html#building
>
> Thanks Vladimir,
>
> It works, for my Java 8.
>
> However, my JMeter scripts need Java 15, so I installed Java 15, following
>  https://mkyong.com/java/how-to-install-java-on-mac-osx/
>
> However this is what I got:
> (sorry, just realized that it is not jmeter's problem but Java15's, so
> marking OT in subject, as I have nowhere to turn to for help, because
> searching for that error message didn't give me much good hits)

NVM, this is really not a jmeter question, and I shouldn't have asked here.
Will ask somewhere else...

> $ /Applications/apache-jmeter-5.4/bin/jmeter
> /Applications/apache-jmeter-5.4/bin/jmeter: line 128: [: : integer
> expression expected
> dyld: Library not loaded: @rpath/libjli.dylib
>   Referenced from:
> /Library/Java/JavaVirtualMachines/openjdk.jdk/Contents/Home/bin/java
>   Reason: image not found
> /Applications/apache-jmeter-5.4/bin/jmeter: line 199: 48130 Abort
> trap: 6           "$JAVA_HOME/bin/java" $ARGS $JVM_ARGS $JMETER_OPTS
> -jar "$PRGDIR/ApacheJMeter.jar" "$@"
>
> Here is more info, that I think relevant:
>
> $ sed -n '128p' /Applications/apache-jmeter-5.4/bin/jmeter
> if [ "$CURRENT_VERSION" -gt "$MINIMAL_VERSION" ]; then
>
> $ type java
> java is hashed (/usr/local/opt/openjdk/bin/java)
>
> $ java -version
> openjdk version "15.0.1" 2020-10-20
> OpenJDK Runtime Environment (build 15.0.1+9)
> OpenJDK 64-Bit Server VM (build 15.0.1+9, mixed mode, sharing)
>
> $ /usr/libexec/java_home
> /Library/Java/JavaVirtualMachines/openjdk.jdk/Contents/Home
>
> $ echo $JAVA_HOME
> /Library/Java/JavaVirtualMachines/openjdk.jdk/Contents/Home
>
> $ ls -l /Library/Java/JavaVirtualMachines/openjdk.jdk/Contents/Home/
> total 4
> drwxr-xr-x 32 t admin 1024 2021-01-18 18:43 bin
> drwxr-xr-x  7 t admin  224 2021-01-18 18:43 conf
> drwxr-xr-x  5 t admin  160 2021-01-18 18:43 demo
> drwxr-xr-x  9 t admin  288 2021-01-18 18:43 include
> drwxr-xr-x 71 t admin 2272 2021-01-18 18:43 jmods
> drwxr-xr-x 71 t admin 2272 2021-01-18 18:43 legal
> drwxr-xr-x 56 t admin 1792 2021-01-18 18:43 lib
> drwxr-xr-x  3 t admin   96 2021-01-18 18:43 man
> -rw-r--r--  1 t admin 1152 2021-01-18 18:43 release
>
> $ groovy -v
> dyld: Library not loaded: @rpath/libjli.dylib
>   Referenced from:
> /Library/Java/JavaVirtualMachines/openjdk.jdk/Contents/Home/bin/java
>   Reason: image not found
> Abort trap: 6

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: [OT] Using JMeter source with Java 15 (openjdk)

Vladimir Sitnikov
>NVM, this is really not a jmeter question

Good luck with figuring out the details :)

You might try https://sdkman.io/ as it has up-to-date Java distributions
from different vendors.

Vladimir