diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -8,6 +8,14 @@
 
 ### Added
 
+## [0.8.2] - 2018-02-27
+
+### Changed
+
+* Fix check for settings.gradle file in cabal hooks. Prevents the file
+  from growing a few bytes each time a project using gradle hooks is
+  rebuilt.
+
 ## [0.8.1] - 2018-02-27
 
 ### Changed
diff --git a/inline-java.cabal b/inline-java.cabal
--- a/inline-java.cabal
+++ b/inline-java.cabal
@@ -1,5 +1,5 @@
 name:                inline-java
-version:             0.8.1
+version:             0.8.2
 synopsis:            Java interop via inline Java code in Haskell modules.
 description:         Please see README.md.
 homepage:            http://github.com/tweag/inline-java#readme
diff --git a/src/Language/Java/Inline/Cabal.hs b/src/Language/Java/Inline/Cabal.hs
--- a/src/Language/Java/Inline/Cabal.hs
+++ b/src/Language/Java/Inline/Cabal.hs
@@ -107,19 +107,19 @@
 
     setProjectName :: IO ()
     setProjectName = do
-      missingProjectName <- isProjectNameSet
+      missingProjectName <- isProjectNameMissing
       when missingProjectName $
           appendFile "settings.gradle" $
             "\nrootProject.name = '" ++
             unPackageName (pkgName (package pd)) ++ "'\n"
 
-    isProjectNameSet :: IO Bool
-    isProjectNameSet = do
+    isProjectNameMissing :: IO Bool
+    isProjectNameMissing = do
       exists <- doesFileExist settingsFile
       if not exists
       then return True
       else withFile settingsFile ReadMode $ \h -> do
-             b <- any ("rootProject.name =" `isPrefixOf`) . lines
+             b <- all (not . ("rootProject.name =" `isPrefixOf`)) . lines
                <$> hGetContents h
              -- If we don't evaluate the boolean before returning, the
              -- file handle will be closed when we try to read the file.
