我该如何修复由于 "Duplicate module name" 碰撞导致的构建失败?
How do I fix a failure to build due to a "Duplicate module name" collision in a react-native?
RN 0.39.2
这听起来像是 的重复,但其中没有任何真正的修复,只有解决方法。还有其他的,但它们适用于旧版本的 RN,或者是相似但不同的根本原因。我有自己的解决方法(见下文),但我想真正解决问题,而不是每天五次执行此解决方法。
错误:
Failed to build DependencyGraph: @providesModule naming collision:
Duplicate module name: react-native-vector-icons
Paths: /Users/collumj/research/kishar-nine/ios/build/Build/Products/Debug-iphonesimulator/kisharNine.app/package.json
collides with
/Users/collumj/research/kishar-nine/node_modules/react-native/local-cli/core/__fixtures__/files/package.json
解决方法(对我而言):
rm -rf android ios
git reset --hard
npm start
一定有办法真正解决这个问题。这个包是不是 link 正确?我在添加 NativeBase (http://nativebase.io/docs/v0.5.13/getting-started) 时安装了它。
更新:还尝试取消linking react-native-vector-icons
库(因为显然你不需要?不确定,linking 在说明中可能是多余的)。无论如何,它没有用,同样的错误。
编辑:好的,这可能实际上没有用,现在检查...
这个问题的解决方案是使用 react-native unlink
取消 link react-native-vector-icons
库。我认为 native-base
库关于使用 link 的说明已经过时了。可能是?不太确定,但我可以说在 unlinking 之后我仍然可以使用图标:
<View style={{
marginTop: 10,
flexDirection: "row"
}}>
<H3 style={{
marginRight: 5
}}>Icons:</H3>
<Icon name='ios-home'/>
<Icon name='ios-menu' style={{
fontSize: 20,
color: 'red'
}}/>
</View>
渲染良好。
如果您使用 npm
命令而不是 yarn
命令,则可能是这样。尝试删除 node_modules 目录。 npm cache clean
然后 yarn install
RN 0.39.2
这听起来像是
错误:
Failed to build DependencyGraph: @providesModule naming collision:
Duplicate module name: react-native-vector-icons
Paths: /Users/collumj/research/kishar-nine/ios/build/Build/Products/Debug-iphonesimulator/kisharNine.app/package.json
collides with
/Users/collumj/research/kishar-nine/node_modules/react-native/local-cli/core/__fixtures__/files/package.json
解决方法(对我而言):
rm -rf android ios
git reset --hard
npm start
一定有办法真正解决这个问题。这个包是不是 link 正确?我在添加 NativeBase (http://nativebase.io/docs/v0.5.13/getting-started) 时安装了它。
更新:还尝试取消linking react-native-vector-icons
库(因为显然你不需要?不确定,linking 在说明中可能是多余的)。无论如何,它没有用,同样的错误。
编辑:好的,这可能实际上没有用,现在检查...
这个问题的解决方案是使用 react-native unlink
取消 link react-native-vector-icons
库。我认为 native-base
库关于使用 link 的说明已经过时了。可能是?不太确定,但我可以说在 unlinking 之后我仍然可以使用图标:
<View style={{
marginTop: 10,
flexDirection: "row"
}}>
<H3 style={{
marginRight: 5
}}>Icons:</H3>
<Icon name='ios-home'/>
<Icon name='ios-menu' style={{
fontSize: 20,
color: 'red'
}}/>
</View>
渲染良好。
如果您使用 npm
命令而不是 yarn
命令,则可能是这样。尝试删除 node_modules 目录。 npm cache clean
然后 yarn install