‘壹’ cordovaplugin在哪个jar
phonegap捐给Apache后就改名为,cordova了,他的功能就是提供JS与本地的通信接口,也就是说,在js里去调用系统相机等等,就是需要打包成apk或者iOSapp
‘贰’ cordova生成项目导入eclipse编译报错
报错的是sdk版本低,叹号是没有jar包
‘叁’ ios问题 :sudo cordova plugin add cordova-plugin-cocoapod-support --save报错,请大神赐教
ios开发环境配置及cordova安装与常用命令
一、ios开发环境配置
1、首先要有台Mac Book,如果有Mac Book,跳过步骤2、3、4,如果没有,执行步骤2、3、4;
2、下载并安装VMware Workstation,最好是下最新版本;
3、下载并安装unlock-all(VMware Workstation默认限制安装Mac虚拟机,需要安装此文件后解除限制);
4、下载Mac OS操作系统的镜像文件(需要是.ios文件)如果下载的是.dmg文件,需要用 anytoiso.exe工具转换成.ios文件,下载完成后在VMware Workstation安装;
5、安装XCode;
6、安装.p12文件;
7、申请bundle id;
8、在XCode中设置开发者账号;
9、在XCode中下载 与bundle id 对应的描述文件;
二、cordova安装与常用命令
1.1安装nodejs
从 nodejs网站 下载并安装,安装成功后,在命令行输入命令:node 或 npm,不报错即可。
1.2 安装cordova
> npm install -g cordova
2.创建工程
a.新建一个文件夹作为工作目录,cmd切换到该路径下
>cd d:\workspace\cordova
b.创建cordova project
>cordova create helloCordova com.hzjava.myCordova HelloCordova
c.添加平台支持
首先进入刚创建的工程根目录
>cd helloCordova
然后
> cordova platforms add ios
> cordova platforms add android
> cordova platforms ls
d.添加插件(根据具体功能添加插件,比如扫码插件、文件操作插件等等,可以去cordova插件库 搜索需要的插件)
> cordova plugin add com.phonegap.plugins.barcodescanner
> cordova plugin add org.apache.cordova.file-transfer
> cordova plugin ls
注意:并非所有插件都是全平台支持的,有些可能只支持android,有些可能同时支持android和ios,所以开发多平台app时需要慎重选择插件
3.项目整合
3.1.Android
a.将静态html文件到helloCordova\www目录下
b.编译android工程:
>cordova build android
c.运行eclipse,导入helloCordova\platforms\android路径下的android工程
d.在html里引用cordova的js库:
<script type="text/javascript" src="cordova.js"></script>
<script type="text/javascript" src="cordova_plugins.js"></script>
3.2.ios
a.将静态html文件到helloCordova\www目录
b.编译ios工程:
>cordova build ios
c.运行xcode,导入helloCordova\platforms\ios路径下的xcode project
d.在html里引用cordova的js库:
<script type="text/javascript" src="cordova.js"></script>
<script type="text/javascript" src="cordova_plugins.js"></script>
cordova编译会将[根目录/www]下文件到具体platform的www文件夹内,如果你的代码写在platforms里的android中,编译时会被覆盖掉
因为add plugin的时候已经自动添加了相关的配置,所以只要有cordova_plugin.js就不需要手动引用cordova插件的js了。
4.打包
4.1.Android
导入platforms\android下面的工程时,会出现两个project:HelloCordova和HelloCordova-CordovaLib。打包时,将HelloCordova-CordovaLib/bin/hellocordova-cordovalib.jar拷贝到HelloCordova/libs文件夹内,然后右击主工程,选择Export,如图
选择Export Android Application
Keystore可以自己创建一个新的,也可以使用现有的
点击‘Finish’成功导出apk
4.2.ios
要打包成任意设备都可以安装的ios安装包(ipa),首先需要一个企业开发者账号($299/年),确认满足以后执行以下步骤:
a.登陆 苹果开发者中心
b.Identifiers >> App IDs,点击“+”号,创建一个app id,填写相关信息下一步即可
c.Provisioning Profiles >> Distribution,点击“+”号,创建一个profile
选择In House
选择一个app id,选择刚刚创建的那个
选择一个certificate
填写profile name
d.下载创建好的profile文件
e.下载步骤c中选择的certificate文件
f.在mac中双击certificate和profile文件将它们导入
g.打开xcode,选中工程,Build Settings >> Code Signing,Code Signing Identity选择注册的公司名
h.Provisioning Profile选择刚刚导入的profile
i.xcode >> window >> Organizer >> Archives,点击Distribute
j.选择save for enterprise or ad hoc deployment,下一步
k.选择一个profile进行签名,然后export
‘肆’ 已有的android项目如何集成cordova
方法/步骤
创建一个Cordova的工程,创建方式参考:/shuma/1744256uiu.html
启动eclipse,右击[package explore]空白处,选择新建
打开新建窗口后,选择用已存在代码创建android项目
选中我们要导入的工程目录,在导入工程窗口我们会发现有两个工程,一个是我们创建的工程,另一个是新版Cordova的类库
导入完成,会发现,hello工程出现在[package explore]工程列表中,可以点击查看
‘伍’ 如何把jar包生成maven工程
一、导出到默认目录 targed/dependency
从Maven项目中导出项目依赖的jar包:进入工程pom.xml 所在的目录下,执行如下命令:
1、mvn dependency:-dependencies或在eclipse中,选择项目的pom.xml文件,点击右键菜单中的Run As,见下图红框中,在弹出的Configuration窗口中,输入 dependency:-dependencies后,点击运行;
2、maven项目所依赖的jar包会导出到targed/dependency目录中。
二、导出到自定义目录中
在maven项目下创建lib文件夹,输入以下命令:
1、mvn dependency:-dependencies -DoutputDirectory=lib;
2、maven项目所依赖的jar包都会复制到项目目录下的lib目录下。
三、设置依赖级别
同时可以设置依赖级别,通常使用compile级别
mvn dependency:-dependencies -DoutputDirectory=lib -DincludeScope=compile
‘陆’ 如何在插件开发中正确使用第三方jar包
在一般插件项目中添加第三方jar包:
1. 创建你的插件项目,并新建一个文件夹放置你需要的第三方jar包,如:<project>/lib。
2. 从文件系统中导入或拷贝jar包至<project>/lib文件夹中,如:<project>/lib/activation.jar。
3. 打开MANIFEST.MF文件,在插件编辑器的"Runtime"Tab页中,把第三方jar包添加到"Classpath"面板中。
4. 如果该插件需要被其他插件依赖,则需要在插件编辑器的"Runtime"Tab页中,在"Exported Packages"面板中添加所有允许访问的包。
通过图形界面编辑器配置后的MANIFEST.MF文件如下:
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Primeton Studio EosTest Core Plug-in
Bundle-SymbolicName: com.primeton.studio.eostest.core
Bundle-Version: 6.0.0
Bundle-Vendor: %Primeton
Bundle-Localization: plugin
Bundle-ClassPath: lib/activation.jar,
lib/jaxb-api.jar,
lib/jaxb-impl.jar,
lib/jsr173_1.0_api.jar
Export-Package: com.primeton.studio.eostest.core,
com.primeton.studio.eostest.core.model.cut,
...
javax.activation,
javax.xml.bind,
javax.xml.bind.annotation,
javax.xml.bind.annotation.adapters,
javax.xml.bind.attachment,
javax.xml.bind.helpers,
javax.xml.bind.util,
javax.xml.stream,
javax.xml.stream.events,
javax.xml.stream.util
Require-Bundle: com.primeton.studio.runtime,
org.eclipse.core.resources
构建插件项目:
5. 打开build.properties文件,在插件编辑器的"Build"Tab页的"Binary Build"面板中,选中需要构建的内容。
生成的build.properties文件如下:
output.. = bin/
bin.includes = META-INF/,\
plugin.xml,\
lib/jaxb-api.jar,\
lib/jaxb-impl.jar,\
lib/jsr173_1.0_api.jar,\
lib/activation.jar,\
plugin.properties,\
plugin_zh_CN.properties
src.includes = META-INF/,\
src/,\
plugin.properties,\
plugin.xml,\
plugin_zh_CN.properties,\
build.properties
在插件项目B中引用一个插件项目A的类:
6. 首先,需要保证该类所在的包在插件A的MANIFEST.MF文件Export-Package:中,如上步骤4。
7. 其次,打开插件项目B的MANIFEST.MF文件,在插件编辑器的"Dependencies"Tab页中,把插件项目A添加到"Required Plug-ins"面板中。如果仅仅是在插件项目B的"Java Build Path"添加了插件项目A,则运行时肯定会出现运行时"NoClassDefFoundError"问题。
导出插件项目:
8. 选中插件项目,在导出向导里选中"Deployable plug-ins and fragments"选项导出。
9. 导出的插件分为三种形式,文件夹、zip包、jar包。导出的内容包括在上面插件项目构建步骤中,build.properties文件bin.includes中选中的内容。
10. 其中jar包的形式需要在"Options"选项里选中"Package plug-ins as indivial JAR archives"选项。
将第三方jar包单独包装成一个插件项目:
另外对于项目中使用到大量的第三方jar包时,可以采用eclipse官方推荐的方式,把第三方jar单独包装成一个插件项目。
按Ctrl+N,在新建对话框里选择"Plug-in from existing JAR archives",按下一步选择你需要的jar文件。
再下一步指定这个plugin的名称,注意这一步里一般要把最下面的"Unzip the JAR archives into the project"选项清除,否则eclipse会把jar文件全部展开为.class文件树,最后按Finish就可以了。
‘柒’ cordova android java 把java类移植到android项目里面
创建jar文件
看来Eclipse无法自动实现项目的整合,那么只能考虑先将公共项目输出为jar,再由需要的项目进行导入了。
由于我这里的公共项目并不是一个Android常规项目,我只希望它充当一个公共的类库,提供一些通用功能,因此我将此项目创建为一个普通的Java项目,然后再Libraries中去掉了Java-SE的引用,加入了Android.jar(这个请根据需要,从SDK中导入特定版本的Android.jar文件),然后执行导出:
参考资料:http://kb.cnblogs.com/page/82503/
‘捌’ cordova 5.0 如何生成cordova.jar
没有必要吧,直接把CordovaLib下的源码放到你的主项目中即可。
‘玖’ 自己写了一个JAR包,如何把它做成Eclipse中的一个插件
如果只想发布为一个可执行的jar包,使用eclipse的Export功能就可以了
使用eclipse的Export功能,将项目中的所有package打包为一个pet.jar文件,假定项目中所有配置文件都在项目根目录的config文件夹.
新建一个文件夹bushu,将项目中的config文件夹放进来
用winrar打开项目引用的所有jar文件,将文件中的所有包文件夹添加进pet.jar文件
创建pet.dat文件,内容:start java -Xmx512m -jar pet.jar
运行pet.dat
试一下这个方法咯,希望对你有所帮助!!!