我克隆了f8app项目
然后在此项目中运行react-native upgrade
它将在路径android/app/src/main/java/com/f8v2/MainActivity.java
创建MainActivity.java,而不是使用原始路径。
原始路径是
android/app/src/main/java/com/facebook/f8/MainActivity.java
以下是我的操作
$ git clone git@github.com:fbsamples/f8app.git
$ cd f8app
$ npm install
$ ls android/app/src/main/java/com/facebook/f8
MainActivity.java
$ react-native upgrade
Upgrading project to react-native v0.28.0
...
create android/app/src/main/java/com/f8v2/MainActivity.java
实际上它并不是版本问题。
它也会在其他版本中创建新文件,例如。 0.32.0
看起来它会根据package.json中的名称而不是android/app/src/main/AndroidManifest.xml
中的现有包名创建新文件,我在此处检查了升级过程中的代码https://github.com/facebook/react-native/blob/0.38-stable/local-cli/generator-android/index.js
this.option('package', {
desc: 'Package name for the application (com.example.app)',
type: String,
defaults: 'com.' + this.name.toLowerCase()
});
...
var javaPath = path.join.apply(
null,
['android', 'app', 'src', 'main', 'java'].concat(this.options.package.split('.'))
);
this.fs.copyTpl(
this.templatePath(path.join('package', '**')),
this.destinationPath(javaPath),
templateParams
);
如何保持原始路径?