Java项目的.gitignore文件示例

11

你能为我展示一个Java相关的.gitignore文件的例子吗?这个文件需要考虑到很多不需要被包含的文件,比如jar、war、classpath以及IDEA和其他IDE生成的文件等等。我的意思是需要一个非常全面的.gitignore文件。

目前我已经有了以下内容:

**/target/
/target/
*/target/*
.classpath
.project
.settings

# Package Files #
*.jar
*.war
*.ear

*.iml
*.idea

有人可以分享一下他自己使用的文件吗? - SaintGeorge
你所询问的问题不仅仅涉及到“Java”本身,还与你使用的IDE、构建工具、工具设置等密切相关。 - Adrian Shum
只有一点需要评论:看起来你正在使用Maven(从target/中可以看出)。添加*.jar, *.war, *.ear是多余的,因为在一个正确的Maven项目中,这些打包输出应该放在target目录下。你不需要再次排除它们。 - Adrian Shum
如果你需要的是Maven和Java的.gitignore文件,那么https://www.gitignore.io/api/maven,java就是你想要的。如果不是,可以前往https://www.gitignore.io并选择你所需的IDE/语言组合。 - eckes
3个回答

24

这个 .gitignore 文件添加了其他与 Java 相关的临时文件 -

https://gist.github.com/dedunumax/54e82214715e35439227

##############################
## Java
##############################
.mtj.tmp/
*.class
*.jar
*.war
*.ear
*.nar
hs_err_pid*

##############################
## Maven
##############################
target/
pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
pom.xml.next
pom.xml.bak
release.properties
dependency-reduced-pom.xml
buildNumber.properties
.mvn/timing.properties
.mvn/wrapper/maven-wrapper.jar

##############################
## Gradle
##############################
bin/
build/
.gradle
.gradletasknamecache
gradle-app.setting
!gradle-wrapper.jar

##############################
## IntelliJ
##############################
out/
.idea/
.idea_modules/
*.iml
*.ipr
*.iws

##############################
## Eclipse
##############################
.settings/
bin/
tmp/
.metadata
.classpath
.project
*.tmp
*.bak
*.swp
*~.nib
local.properties
.loadpath
.factorypath

##############################
## NetBeans
##############################
nbproject/private/
build/
nbbuild/
dist/
nbdist/
nbactions.xml
nb-configuration.xml

##############################
## Visual Studio Code
##############################
.vscode/
.code-workspace

##############################
## OS X
##############################
.DS_Store

9

谢谢提供链接,非常有帮助! - Stefan Höltker

5
您可以在https://github.com/github/gitignore/blob/master/Java.gitignore获取示例java gitignore文件。
根据注释,这里是示例gitignore类的要点。
*.class

# Mobile Tools for Java (J2ME)
.mtj.tmp/

# Package Files #
*.jar
*.war
*.ear

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*

1
不,那不是我想表达的意思。那个文件只包括*.jar *.war *.ear,这很好。那么像IDEA生成的文件呢? - SaintGeorge
您可能会发现以下链接有用 Jetbrains Gitignore - rahduro

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接