Filename too long
fishfacegit opened this issue · 2 comments
Hi there!
Recently I tried to compile the scala-refactoring lib and got an 'Filename too long error' on 'org.scala-refactoring.library/src/test/scala/scala/tools/refactoring/tests/util/TestRefactoring.scala'. Do I have to change my Compiler Settings or is there a workaround for it?
Many Thanks in Adavnce
fishfacegit
--------------------------------------Compiler Description------------------------------------------------------
while compiling: /home/hadrian/scala-refactoring/org.scala-refactoring.library/src/test/scala/scala/tools/refactoring/tests/util/TestRefactoring.scala during phase: jvm library version: version 2.10.1 compiler version: version 2.10.1 reconstructed args: -Xpluginsdir /home/hadrian/.eclipse/org.eclipse.platform_3.8_155965261/configuration/org.eclipse.osgi/bundles/232/1/.cp/lib -classpath /usr/lib/jvm/java-7-openjdk-common/jre/lib/resources.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rt.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jsse.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jce.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/charsets.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rhino.jar:/usr/share/java/java-atk-wrapper.jar:/usr/lib/jvm/java-7-openjdk-common/jre/lib/ext/sunpkcs11.jar:/usr/lib/jvm/java-7-openjdk-common/jre/lib/ext/dnsns.jar:/usr/lib/jvm/java-7-openjdk-common/jre/lib/ext/sunjce_provider.jar:/usr/lib/jvm/java-7-openjdk-common/jre/lib/ext/localedata.jar:/usr/lib/jvm/java-7-openjdk-common/jre/lib/ext/pulse-java.jar:/usr/lib/jvm/java-7-openjdk-common/jre/lib/ext/zipfs.jar:/home/hadrian/.eclipse/org.eclipse.platform_3.8_155965261/configuration/org.eclipse.osgi/bundles/233/1/.cp/lib/scala-swing.jar:/home/hadrian/.eclipse/org.eclipse.platform_3.8_155965261/configuration/org.eclipse.osgi/bundles/233/1/.cp/lib/scala-actors.jar:/home/hadrian/.eclipse/org.eclipse.platform_3.8_155965261/configuration/org.eclipse.osgi/bundles/232/1/.cp/lib/scala-reflect.jar:/usr/share/java/junit4-4.10.jar:/usr/share/java/hamcrest-core-1.2.jar:/home/hadrian/.eclipse/org.eclipse.platform_3.8_155965261/plugins/org.scala-ide.scala.library_2.10.1.v20130302-092018-VFINAL-33e32179fd.jar:/home/hadrian/refac/.metadata/.plugins/org.eclipse.pde.core/.external_libraries/org.scala-ide.scala.library_2.10.1.v20130302-092018-VFINAL-33e32179fd/lib/scala-swing.jar:/home/hadrian/refac/.metadata/.plugins/org.eclipse.pde.core/.external_libraries/org.scala-ide.scala.library_2.10.1.v20130302-092018-VFINAL-33e32179fd/lib/scala-actors.jar:/home/hadrian/.eclipse/org.eclipse.platform_3.8_155965261/plugins/org.scala-ide.scala.compiler_2.10.1.v20130302-092018-VFINAL-33e32179fd.jar:/home/hadrian/refac/.metadata/.plugins/org.eclipse.pde.core/.external_libraries/org.scala-ide.scala.compiler_2.10.1.v20130302-092018-VFINAL-33e32179fd/lib/scala-compiler.jar:/home/hadrian/refac/.metadata/.plugins/org.eclipse.pde.core/.external_libraries/org.scala-ide.scala.compiler_2.10.1.v20130302-092018-VFINAL-33e32179fd/lib/scala-reflect.jar:/home/hadrian/.eclipse/org.eclipse.platform_3.8_155965261/configuration/org.eclipse.osgi/bundles/232/1/.cp/lib/scala-compiler.jar -bootclasspath /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/resources.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rt.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jsse.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jce.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/charsets.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/netx.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/plugin.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rhino.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jfr.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/classes:/home/hadrian/.eclipse/org.eclipse.platform_3.8_155965261/configuration/org.eclipse.osgi/bundles/233/1/.cp/lib/scala-library.jar last tree to typer: Literal(Constant(())) symbol: null symbol definition: null tpe: Unit symbol owners: context owners: class TestRefactoring$TestRefactoringImpl -> package util == Enclosing template or block == Template( // val : in class TestRefactoring$TestRefactoringImpl, tree.tpe=tools.refactoring.tests.util.TestRefactoring$TestRefactoringImpl "java.lang.Object" // parents ValDef( private "_" ) // 7 statements ValDef( // val project: tools.refactoring.tests.util.TestHelper$FileSet in class TestRefactoring$TestRefactoringImpl private "project" // tree.tpe=tools.refactoring.tests.util.TestHelper$FileSet ) DefDef( // val refactoring(): tools.refactoring.MultiStageRefactoring in class TestRefactoring$TestRefactoringImpl "refactoring" [] List(Nil) // tree.tpe=tools.refactoring.MultiStageRefactoring ) DefDef( // def preparationResult(): util.Either in class TestRefactoring$TestRefactoringImpl "preparationResult" [] List(Nil) // tree.tpe=util.Either Apply( // def prepare(s: tools.refactoring.common.Selections$Selection): util.Either in class MultiStageRefactoring, tree.tpe=util.Either TestRefactoring$TestRefactoringImpl.this.refactoring()."prepare" // def prepare(s: tools.refactoring.common.Selections$Selection): util.Either in class MultiStageRefactoring, tree.tpe=(s: tools.refactoring.common.Selections$Selection)util.Either Apply( // def selection(refactoring: tools.refactoring.common.Selections,project: tools.refactoring.tests.util.TestHelper$FileSet): tools.refactoring.common.Selections$Selection in trait TestHelper, tree.tpe=tools.refactoring.common.Selections$Selection TestRefactoring$TestRefactoringImpl.this.scala$tools$refactoring$tests$util$TestRefactoring$TestRefactoringImpl$$$outer()."selection" // def selection(refactoring: tools.refactoring.common.Selections,project: tools.refactoring.tests.util.TestHelper$FileSet): tools.refactoring.common.Selections$Selection in trait TestHelper, tree.tpe=(refactoring: tools.refactoring.common.Selections, project: tools.refactoring.tests.util.TestHelper$FileSet)tools.refactoring.common.Selections$Selection // 2 arguments Apply( // val refactoring(): tools.refactoring.MultiStageRefactoring in class TestRefactoring$TestRefactoringImpl, tree.tpe=tools.refactoring.MultiStageRefactoring TestRefactoring$TestRefactoringImpl.this."refactoring" // val refactoring(): tools.refactoring.MultiStageRefactoring in class TestRefactoring$TestRefactoringImpl, tree.tpe=()tools.refactoring.MultiStageRefactoring Nil ) TestRefactoring$TestRefactoringImpl.this."project" // val project: tools.refactoring.tests.util.TestHelper$FileSet in class TestRefactoring$TestRefactoringImpl, tree.tpe=tools.refactoring.tests.util.TestHelper$FileSet ) ) ) DefDef( // def performRefactoring(parameters: Object): List in class TestRefactoring$TestRefactoringImpl "performRefactoring" [] // 1 parameter list ValDef( // parameters: Object "parameters" // tree.tpe=Object ) // tree.tpe=List Block( // tree.tpe=List // 4 statements ValDef( // case val x1: util.Either case "x1" // tree.tpe=util.Either Apply( // def preparationResult(): util.Either in class TestRefactoring$TestRefactoringImpl, tree.tpe=util.Either TestRefactoring$TestRefactoringImpl.this."preparationResult" // def preparationResult(): util.Either in class TestRefactoring$TestRefactoringImpl, tree.tpe=()util.Either Nil ) ) LabelDef( // case def case6(): List, tree.tpe=List () If( // tree.tpe=List Apply( // final def $isInstanceOfT0 >: ? <: ?: Boolean in class Object, tree.tpe=Boolean TypeApply( // final def $isInstanceOfT0 >: ? <: ?: Boolean in class Object, tree.tpe=()Boolean "x1"."$isInstanceOf" // final def $isInstanceOfT0 >: ? <: ?: Boolean in class Object, tree.tpe=T0 >: ? <: ?Boolean // tree.tpe=util.Right ) Nil ) Block( // tree.tpe=List ValDef( // val x2: util.Right "x2" // tree.tpe=util.Right Typed( // tree.tpe=util.Right Apply( // final def $asInstanceOfT0 >: ? <: ?: T0 in class Object, tree.tpe=util.Right TypeApply( // final def $asInstanceOfT0 >: ? <: ?: T0 in class Object, tree.tpe=()util.Right "x1"."$asInstanceOf" // final def $asInstanceOfT0 >: ? <: ?: T0 in class Object, tree.tpe=T0 >: ? <: ?T0 // tree.tpe=util.Right ) Nil ) // tree.tpe=util.Right ) ) Block( // tree.tpe=List ValDef( // val prepare: Object "prepare" // tree.tpe=Object Apply( // val b(): Object in class Right, tree.tpe=Object "x2"."b" // val b(): Object in class Right, tree.tpe=()Object Nil ) ) Apply( // case def matchEnd5(x: List): List, tree.tpe=List "matchEnd5" // case def matchEnd5(x: List): List, tree.tpe=(x: List)List Block( // tree.tpe=List // 4 statements ValDef( // case val x1: util.Either case "x1" // tree.tpe=util.Either Apply( // def perform(selection: tools.refactoring.common.Selections$Selection,prepared: Object,params: Object): util.Either in class MultiStageRefactoring, tree.tpe=util.Either TestRefactoring$TestRefactoringImpl.this.refactoring()."perform" // def perform(selection: tools.refactoring.common.Selections$Selection,prepared: Object,params: Object): util.Either in class MultiStageRefactoring, tree.tpe=(selection: tools.refactoring.common.Selections$Selection, prepared: Object, params: Object)util.Either // 3 arguments Apply( // def selection(refactoring: tools.refactoring.common.Selections,project: tools.refactoring.tests.util.TestHelper$FileSet): tools.refactoring.common.Selections$Selection in trait TestHelper, tree.tpe=tools.refactoring.common.Selections$Selection TestRefactoring$TestRefactoringImpl.this.scala$tools$refactoring$tests$util$TestRefactoring$TestRefactoringImpl$$$outer()."selection" // def selection(refactoring: tools.refactoring.common.Selections,project: tools.refactoring.tests.util.TestHelper$FileSet): tools.refactoring.common.Selections$Selection in trait TestHelper, tree.tpe=(refactoring: tools.refactoring.common.Selections, project: tools.refactoring.tests.util.TestHelper$FileSet)tools.refactoring.common.Selections$Selection // 2 arguments Apply( // val refactoring(): tools.refactoring.MultiStageRefactoring in class TestRefactoring$TestRefactoringImpl, tree.tpe=tools.refactoring.MultiStageRefactoring TestRefactoring$TestRefactoringImpl.this."refactoring" // val refactoring(): tools.refactoring.MultiStageRefactoring in class TestRefactoring$TestRefactoringImpl, tree.tpe=()tools.refactoring.MultiStageRefactoring Nil ) TestRefactoring$TestRefactoringImpl.this."project" // val project: tools.refactoring.tests.util.TestHelper$FileSet in class TestRefactoring$TestRefactoringImpl, tree.tpe=tools.refactoring.tests.util.TestHelper$FileSet ) "prepare" // val prepare: Object, tree.tpe=Object "parameters" // parameters: Object, tree.tpe=Object ) ) LabelDef( // case def case6(): List, tree.tpe=List () If( // tree.tpe=List Apply( // final def $isInstanceOfT0 >: ? <: ?: Boolean in class Object, tree.tpe=Boolean TypeApply( // final def $isInstanceOfT0 >: ? <: ?: Boolean in class Object, tree.tpe=()Boolean "x1"."$isInstanceOf" // final def $isInstanceOfT0 >: ? <: ?: Boolean in class Object, tree.tpe=T0 >: ? <: ?Boolean // tree.tpe=util.Right ) Nil ) Block( // tree.tpe=List ValDef( // val x2: util.Right "x2" // tree.tpe=util.Right Typed( // tree.tpe=util.Right Apply( // final def $asInstanceOfT0 >: ? <: ?: T0 in class Object, tree.tpe=util.Right TypeApply( // final def $asInstanceOfT0 >: ? <: ?: T0 in class Object, tree.tpe=()util.Right "x1"."$asInstanceOf" // final def $asInstanceOfT0 >: ? <: ?: T0 in class Object, tree.tpe=T0 >: ? <: ?T0 // tree.tpe=util.Right ) Nil ) // tree.tpe=util.Right ) ) Block( // tree.tpe=List ValDef( // val modifications: List "modifications" // tree.tpe=List Apply( // final def $asInstanceOfT0 >: ? <: ?: T0 in class Object, tree.tpe=List TypeApply( // final def $asInstanceOfT0 >: ? <: ?: T0 in class Object, tree.tpe=()List x2.b()."$asInstanceOf" // final def $asInstanceOfT0 >: ? <: ?: T0 in class Object, tree.tpe=T0 >: ? <: ?T0 // tree.tpe=List ) Nil ) ) Apply( // case def matchEnd5(x: List): List, tree.tpe=List "matchEnd5" // case def matchEnd5(x: List): List, tree.tpe=(x: List)List "modifications" // val modifications: List, tree.tpe=List ) ) ) Apply( // case def case7(): List, tree.tpe=List "case7" // case def case7(): List, tree.tpe=()List Nil ) ) ) LabelDef( // case def case7(): List, tree.tpe=List () If( // tree.tpe=List Apply( // final def $isInstanceOfT0 >: ? <: ?: Boolean in class Object, tree.tpe=Boolean TypeApply( // final def $isInstanceOfT0 >: ? <: ?: Boolean in class Object, tree.tpe=()Boolean "x1"."$isInstanceOf" // final def $isInstanceOfT0 >: ? <: ?: Boolean in class Object, tree.tpe=T0 >: ? <: ?Boolean // tree.tpe=util.Left ) Nil ) Block( // tree.tpe=List ValDef( // val x3: util.Left "x3" // tree.tpe=util.Left Typed( // tree.tpe=util.Left Apply( // final def $asInstanceOfT0 >: ? <: ?: T0 in class Object, tree.tpe=util.Left TypeApply( // final def $asInstanceOfT0 >: ? <: ?: T0 in class Object, tree.tpe=()util.Left "x1"."$asInstanceOf" // final def $asInstanceOfT0 >: ? <: ?: T0 in class Object, tree.tpe=T0 >: ? <: ?T0 // tree.tpe=util.Left ) Nil ) // tree.tpe=util.Left ) ) Block( // tree.tpe=List ValDef( // val error: tools.refactoring.MultiStageRefactoring$RefactoringError "error" // tree.tpe=tools.refactoring.MultiStageRefactoring$RefactoringError Apply( // final def $asInstanceOfT0 >: ? <: ?: T0 in class Object, tree.tpe=tools.refactoring.MultiStageRefactoring$RefactoringError TypeApply( // final def $asInstanceOfT0 >: ? <: ?: T0 in class Object, tree.tpe=()tools.refactoring.MultiStageRefactoring$RefactoringError x3.a()."$asInstanceOf" // final def $asInstanceOfT0 >: ? <: ?: T0 in class Object, tree.tpe=T0 >: ? <: ?T0 // tree.tpe=tools.refactoring.MultiStageRefactoring$RefactoringError ) Nil ) ) Apply( // case def matchEnd5(x: List): List, tree.tpe=List "matchEnd5" // case def matchEnd5(x: List): List, tree.tpe=(x: List)List Throw( // tree.tpe=Nothing Apply( // def (arg$outer: tools.refactoring.tests.util.TestRefactoring,cause: String): tools.refactoring.tests.util.TestRefactoring$RefactoringException in class TestRefactoring$RefactoringException, tree.tpe=tools.refactoring.tests.util.TestRefactoring$RefactoringException new tools.refactoring.tests.util.TestRefactoring$RefactoringException."" // def (arg$outer: tools.refactoring.tests.util.TestRefactoring,cause: String): tools.refactoring.tests.util.TestRefactoring$RefactoringException in class TestRefactoring$RefactoringException, tree.tpe=(arg$outer: tools.refactoring.tests.util.TestRefactoring, cause: String)tools.refactoring.tests.util.TestRefactoring$RefactoringException // 2 arguments Apply( // val $outer(): tools.refactoring.tests.util.TestRefactoring in class TestRefactoring$TestRefactoringImpl, tree.tpe=tools.refactoring.tests.util.TestRefactoring TestRefactoring$TestRefactoringImpl.this."scala$tools$refactoring$tests$util$TestRefactoring$TestRefactoringImpl$$$outer" // val $outer(): tools.refactoring.tests.util.TestRefactoring in class TestRefactoring$TestRefactoringImpl, tree.tpe=()tools.refactoring.tests.util.TestRefactoring Nil ) Apply( // val cause(): String in class MultiStageRefactoring$RefactoringError, tree.tpe=String "error"."cause" // val cause(): String in class MultiStageRefactoring$RefactoringError, tree.tpe=()String Nil ) ) ) ) ) ) Apply( // case def case8(): List, tree.tpe=List "case8" // case def case8(): List, tree.tpe=()List Nil ) ) ) LabelDef( // case def case8(): List, tree.tpe=List () Apply( // case def matchEnd5(x: List): List, tree.tpe=List "matchEnd5" // case def matchEnd5(x: List): List, tree.tpe=(x: List)List Throw( // tree.tpe=Nothing Apply( // def (obj: Object): MatchError in class MatchError, tree.tpe=MatchError new MatchError."" // def (obj: Object): MatchError in class MatchError, tree.tpe=(obj: Object)MatchError "x1" // case val x1: util.Either, tree.tpe=util.Either ) ) ) ) LabelDef( // case def matchEnd5(x: List): List, tree.tpe=List "x" // x: List, tree.tpe=List "x" // x: List, tree.tpe=List ) ) ) ) ) Apply( // case def case7(): List, tree.tpe=List "case7" // ca
--------------------------------------Compiler Description------------------------------------------------------
That's surprising, it doesn't look that long to me. Is your home directory encrypted? That seems to be a common cause for the error. Otherwise, there's also the -Xmax-classfile-name option that you can pass to scalac (https://issues.scala-lang.org/browse/SI-4650).
Solved!
Is your home directory encrypted? positive.
added -Xmax-classfile-name options to in 'scala-refactoring/pom.xml'
Done.