Gradle Could not expand ZIP: is not a ZIP archive - gradle

I am trying to unzip an archive file in my Gradle build script.
The archive file exists, and I have checked that it is indeed a zip file by running
file myfile.zip
However, build fails with the following error:
Could not expand ZIP '/.../file.zip': is not a ZIP archive

For Windows:
Please delete the package of the zip file and clean gradle. It will resolve.

One reason this can happen is if the file is damaged or corrupted.
The way to check that is to try manually unzipping the file.

For me, the problem was semi-unrelated. My build directory was owned by root and I was running as a user that did not have permissions to write there. I ended up deleting the dir and the next gradle build handled it.

Yes.. it was due to permission on that file.
For windows:
Give the permission including parent folder as same administrator.
Try it to do it again.
If still not work, delete the zip file and let them create again after 1st step. It will resolve.

I got same error, and after running ./gradlew build --stacktrace found out that resources folder contained Flyway migration file with name "V1.1.98__documents..sql" (double dot). Apparently this caused problems with zipping. Was typo of course.

Related

AzureDevops Release - Command Shell "do not have permissions"

I've created a release on Azuredevops with a Command Line Task.
The script is really simple :
Unzip the artifcats and move it to another folder.
But owner's folder is not the same between the Agent Deployment and the repository.
I add chmod 777, it's works, but is not the best answer.
Do you have another solution ?
AzureDevops Release - Command Shell “do not have permissions”
Indeed, to unzip the artifcats and move it to another folder, we could use Extract Files task to complete this:
Extract Files task
Use this task in a build or release pipeline to extract files from
archives to a target folder using match patterns. A range of standard
archive formats is supported, including .zip, .jar, .war, .ear, .tar,
.7z, and more.
BTW, there is an extension to Unzip a directories Zip and unzip directory build task
Hope this helps.

How to resolve "test-life cycle-and-artifact Handler1.pom.sha1 " cannot creat on maven installiton

I need your help.
I downloaded maven 3-5-0-src.zip file from maven site. I started to unzip process after a few seconds I got an this error.
Error: System doesn't find this path.
Cannot create
C:\Users\AppData\Local\Temp\wz85b2\apache-maven-3.5.0\maven-core\src\test\resources\org\apache\maven\extension\test-extension-repo\org\apache\maven\core\test\test-lifecycle-and-artifactHandler\1\test-lifecycle-and-artifactHandler-1.pom.sha1.
I can't install maven on my computer. How can solve this?
The ...-src.zip file only contains the source files for your reference.
You need to download and install the binary zip file at apache-maven-3.5.0-bin.zip if you're planning to use maven to build stuff.
Otherwise, the above error looks suspiciously like a Windows path length problem.

Spring Tool Suite download and installation

I've downloaded spring-tool-suite-3.6.1.RELEASE-e4.4-win32-x86_64.zip and getting the following error while trying to unzip and install:
Error 0x80010135: Path too long
POM.properties
Type PROPERTIES File
Date Modified 6/11/2014 12:47PM
Size 146 bytes.
What may be the reason?
Possible solutions:
Rename spring-tool-suite-3.6.1.RELEASE-e4.4-win32-x86_64.zip to springts.zip
Move spring-tool-suite-3.6.1.RELEASE-e4.4-win32-x86_64.zip to C:/ or in another location that is not very deep.
Change your extractor to 7-zip.
Try with any alternative for zip such as 7Zip or WinRAR. 7Zip worked for me
This happens because of the zip file name being too long.You can rename the downloaded zip file to something like STS.zip (Give a short name) and then try to extract it.The error should now disappear.
When you extract, it will try to extract in a folder named "spring-tool-suite-3.6.1.RELEASE-e4.4-win32-x86_64" which is too long for a folder name. Simple rule of thumb -- install to C:\ and rename the above to STS361_x8664. Be very frugal with folder names.
This happens because the file name & path are too long.
Rename them to something smaller and simpler.
Here is the link that I found helpful
Step 1: Download STS zip file from spring official website
Step 2: After downloading Spring Tool Suite zip file then extract that then Open STS directory file click on STS icon below like this.
Step 3: Run that file then Select a directory as a workspace and browse your directory.
Here is complete installations of STS on Windows operating system.
Source : http://commandstech.com/how-to-install-springtoolsuitests-with-scala-on-windows-7-8-10/

jJenkins - Empty workspace after build

I have setup Jenkins with Maven but I am having trouble populating my workspace directory after a build. I get a build success but my workspace directory remains empty? The builds are correctly saving to the builds folder but for some unknown reason, are not copying files to workspace.
I am running on a Mac (created the scm.sh shell to run scm) and fear that this could be the problem? When I try to 'Wipe Out Workspace' in Jenkins I get a:
java.io.IOException: Cannot run program "scm": error=2, No such file or directory
Any ideas would be very appreciated, thanks.

Maven : error in opening zip file when running maven

[ERROR] error: error reading C:\Users\suresh\.m2\repository\org\jdom\jdom\1.1\jdom-1.1.jar; error in opening zip file
[ERROR] error: error reading C:\Users\suresh\.m2\repository\javax\servlet\servlet-api\2.5\servlet-api-2.5.jar; error in opening zip file
[ERROR] error: error reading C:\Users\suresh\.m2\repository\org\apache\cxf\cxf-rt-bindings-http\2.2.1\cxf-rt-bindings-http-2.2.1.jar; error in opening zip file
[ERROR] error: error reading C:\Users\suresh\.m2\repository\org\codehaus\jra\jra\1.0-alpha-4\jra-1.0-alpha-4.jar; error in opening zip file
[ERROR] error: error reading C:\Users\suresh\.m2\repository\org\apache\cxf\cxf-api\2.2.1\cxf-api-2.2.1.jar; error in opening zip file
[ERROR] error: error reading C:\Users\suresh\.m2\repository\org\apache\cxf\cxf-common-utilities\2.2.1\cxf-common-utilities-2.2.1.jar; error in opening zip file
[INFO] 44 errors
How to resolve this error while running mvn clean install?
And I see that, starting from servlet-api, no packages are being created inside the local repository on my disk.
Probably, contents of the JAR files in your local .m2 repository are HTML saying "301 Moved Permanently". It seems that mvn does not handle "301 Moved Permanently" properly as expected. In such a case, download the JAR files manually from somewhere (the central repository, for example) and put them into your .m2 repository.
See also:
asm-3.1.jar; error in opening zip file
http://darutk-oboegaki.blogspot.jp/2012/07/asm-31jar-error-in-opening-zip-file.html
This error sometimes occurs. The files becomes corrupt.
A quick solution thats works for me, is:
Go to your local repository (in general /.m2/) in your case I see that is C:\Users\suresh.m2)
Search for the packages that makes conflicts (in general go to repository/org) and delete it
Try again to install it
With that you force to get the actual files
good luck with that!
Try to remove your repository in /.m2/repository/ and then do a mvn clean install to download the files again.
I had the same problem but previous solutions not work for me. The only solution works for me is the following URL.
https://enlightensoft.wordpress.com/2013/01/15/maven-error-reading-error-in-opening-zip-file/
[EDIT]
Here I explain more about it
Suppose you got an error like below
[ERROR] error: error reading C:\Users\user\.m2\repository\org\jdom\jdom\1.1\jdom-1.1.jar; error in opening zip file
Then you have to follow these steps.
First, delete the existing jar C:\Users\user\.m2\repository\org\jdom\jdom\1.1\jdom-1.1.jar
Then you have to manually download relevant jar from Maven central repository. You can download from this link here
After that, you have to copy that downloaded jar into the previous directory.C:\Users\user\.m2\repository\org\jdom\jdom\1.1\
Then you can build your project using mvn clean install
hope this will help somebody.
go to the .m2/repository and delete the conflicting files
mvn -U clean install
This error can occur when your connection gets interrupted during your dependencies are being downloaded.
Delete the relevant repository folder and run following command again to download a fresh copy of corrupted file.
mvn clean install
I just have this error. You can delete the files and run the compiling command again:
$ sudo rm /Users/Chaklader/.m2/repository/org/apache/poi/poi/3.17/poi-3.17.jar
$ sudo rm /Users/Chaklader/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.7.5/jackson-databind-2.7.5.jar
$ sudo rm /Users/Chaklader/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.7.5/jackson-core-2.7.5.jar
Now, run the command for the clean compile:
$ mvn -U clean compile
I had a similar problem as well. The fix was a mix of both. I had a problem with asm-3.1 (as mentioned in the blog post linked by Takahiko. That jar was corrupt. I needed to manually get the jar from the maven central repository. Removing it and retrying just got the corrupt jar again. It then still failed on the asm-parent, which was a POM file containing the HTML with a 301. Again, it required manually getting the file myself. You may want to check what settings XML to see if you're set to a different repository, such as a local nexus server.
When the proper way to get the new one fails, manually grab it yourself.
I deleted the jar downloaded by maven
manually download the jar from google
place the jar in the local repo in place of deleted jar.
This resolved my problem.
Hope it helps
I also encountered the same problem, my problem has been resolved.
The solution is:
According to error information being given, to find the corresponding jar in maven repository and deleted.
Then executed mvn install command after deleting.
Accidently I found a simple workaroud to this issue. Running Maven with -X option forces it to try other servers to download source code. Instead of trash HTML inside some jar files there is correct content.
mvn clean install -X > d:\log.txt
And in the log file you find messages like these:
Downloading: https://repository.apache.org/content/groups/public/org/apache/axis2/mex/1.6.1-wso2v2/mex-1.6.1-wso2v2-impl.jar
[DEBUG] Writing resolution tracking file D:\wso2_local_repository\org\apache\axis2\mex\1.6.1-wso2v2\mex-1.6.1-wso2v2-impl.jar.lastUpdated
Downloading: http://maven.wso2.org/nexus/content/groups/wso2-public/org/apache/axis2/mex/1.6.1-wso2v2/mex-1.6.1-wso2v2-impl.jar
You see, Maven switched repository.apache.org to maven.wso2.org when it encountered a download problem. So the following error is now gone:
[ERROR] error: error reading D:\wso2_local_repository\org\apache\axis2\mex\1.6.1-wso2v2\mex-1.6.1-wso2v2-impl.jar; error in opening zip file
This issue is a pain in my a$$, I have this issue in my Mac,
if I run
mvn clean install | grep "error reading"
[ERROR] error reading /Users/ducnguyen/.m2/repository/org/apache/velocity/velocity/1.7/velocity-1.7.jar; error in opening zip file
[ERROR] error reading /Users/ducnguyen/.m2/repository/commons-net/commons-net/3.3/commons-net-3.3.jar; error in opening zip file
[ERROR] error reading /Users/ducnguyen/.m2/repository/org/apache/commons/commons-lang3/3.0/commons-lang3-3.0.jar; error in opening zip file
[ERROR] error reading /Users/ducnguyen/.m2/repository/org/bouncycastle/bcprov-jdk15on/1.54/bcprov-jdk15on-1.54.jar; error in opening zip file
[ERROR] error reading /Users/ducnguyen/.m2/repository/javax/mail/mail/1.4/mail-1.4.jar; error in opening zip file
[ERROR] error reading /Users/ducnguyen/.m2/repository/org/apache/pdfbox/pdfbox/2.0.0/pdfbox-2.0.0.jar; error in opening zip file
[ERROR] error reading /Users/ducnguyen/.m2/repository/com/itextpdf/itextpdf/5.5.10/itextpdf-5.5.10.jar; error in opening zip file
[ERROR] error reading /Users/ducnguyen/.m2/repository/org/slf4j/slf4j-api/1.7.24/slf4j-api-1.7.24.jar; error in opening zip file
[ERROR] error reading /Users/ducnguyen/.m2/repository/com/aspose/aspose-pdf/11.5.0/aspose-pdf-11.5.0.jar; error in opening zip file
[ERROR] error reading /Users/ducnguyen/.m2/repository/org/apache/velocity/velocity/1.7/velocity-1.7.jar; error in opening zip file
[ERROR] error reading /Users/ducnguyen/.m2/repository/commons-net/commons-net/3.3/commons-net-3.3.jar; error in opening zip file
[ERROR] error reading /Users/ducnguyen/.m2/repository/org/apache/commons/commons-lang3/3.0/commons-lang3-3.0.jar; error in opening zip file
[ERROR] error reading /Users/ducnguyen/.m2/repository/org/bouncycastle/bcprov-jdk15on/1.54/bcprov-jdk15on-1.54.jar; error in opening zip file
[ERROR] error reading /Users/ducnguyen/.m2/repository/javax/mail/mail/1.4/mail-1.4.jar; error in opening zip file
[ERROR] error reading /Users/ducnguyen/.m2/repository/org/apache/pdfbox/pdfbox/2.0.0/pdfbox-2.0.0.jar; error in opening zip file
[ERROR] error reading /Users/ducnguyen/.m2/repository/com/itextpdf/itextpdf/5.5.10/itextpdf-5.5.10.jar; error in opening zip file
[ERROR] error reading /Users/ducnguyen/.m2/repository/org/slf4j/slf4j-api/1.7.24/slf4j-api-1.7.24.jar; error in opening zip file
Removing all corrupted libs is the only solution
So I want to remove all of them at once.
mvn clean install | grep "error reading" | awk '{print "rm " $4 | "/bin/sh" }'
The command needs AWK to take libPath string from column $4
Then rerun
mvn clean install
I deleted the affected jar file from Maven external libraries
Then I performed Maven > Reload project which fixed the library by reinstalling
This worked for me without manually downloading a .jar file
For me I should change the .m2 repo in the settings.xml file with another one because in Mac maven can't create a folder that start with point(.)
to solve that, open your maven/version/conf/settings.xml and specify the location of your repo folder like this :
<localRepository>../repo</localRepository>
don't forget to change it also in your IDE, in eclipse go to : Windows > Preferences > Maven > User Settings > Global Settings, and navigate to your settings.xml.
clean install your project.
hope this will help you.
This error occurs because of some file corruption.
But we don't need to delete whole .m2 folder.
Instead find which jar files get corrupted by looking at the error message in the console. And delete only the folders which contains those jar files.
Like in the question :
C:\Users\suresh\.m2\repository\org\jdom\jdom\
C:\Users\suresh\.m2\repository\javax\servlet\servlet-api\
C:\Users\suresh\.m2\repository\org\apache\cxf\cxf-rt-bindings-http
C:\Users\suresh\.m2\repository\org\codehaus\jra\jra
C:\Users\suresh\.m2\repository\org\apache\cxf\cxf-api
C:\Users\suresh\.m2\repository\org\apache\cxf\cxf-common-utilities
Delete these folders.
Then run.
mvn clean install -U
Deleting the entire local m2 repo may not be advisable. As in my case I have hundreds and hundreds of jars in my local, I don't want to re-download them all just for one jar.
Most of the above answers didn't work for me, here is what I did.
STEP:1: Ensure if you are downloading from the correct Maven repo in you settings.xml. In my case it was referring to http://central.maven.org/maven2/ as https://repo1.maven.org/maven2/. So it was getting corrupted or going otherwise?
STEP:2: Delete the folder containing the artifact and other details in your local machine.This will force it download it again upon next build
STEP:3: mvn clean install :).
Hope it helps.
I downloaded the jar file manually and replace the one in my local directory and it worked
You could also check if the required certificates are installed to make sure that it allows the dependencies to be downloaded.

Resources