设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10081|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * `$ g' n, ?* x& s, {- y' ^
( X( b' G7 b% ^2 r5 j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ H! g& ?" \4 N' c5 I以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! M- {1 O: A5 p. }* z
swarm.SignatureNotFoundException
1 v( d% I6 b: X2 k        at swarm.Selector.<init>(Selector.java:76)
. D; r8 F' I. ^        at ActionGroupDemo.<init>(ActionGroupDemo.java:37), H1 K* w) Q! U
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
. U$ n6 K7 n# F- R" B# }# a0 g
! E: c, R" w/ T( `- X. o2 G! ?' v9 Y+ B- q' G; z
import swarm.objectbase.SwarmImpl;2 `9 \1 i! k+ j7 M: q. \
import swarm.objectbase.Swarm;9 r4 R( D; P. t9 U: [
import swarm.activity.ScheduleImpl;: c- O' }: z1 e
import swarm.activity.Activity;/ z* d% _% H% }" p9 M- |0 h
import swarm.activity.ActionGroupImpl;2 ^) F5 e6 `% t
import swarm.collections.ListImpl;6 C# N5 {4 |1 a2 _7 O* z
import swarm.defobj.Zone;
8 ?) G; C, r' J" \import swarm.Globals;1 A* C+ @% m4 Y+ J; B
import swarm.Selector;
* G; P6 j% ?, G6 R! i9 _import swarm.activity.ActionGroup;
+ z+ L. t2 ]( g' \class Agent {
( A+ s' N9 {/ J0 x3 d        char id;
0 j, t/ w- ?& `, |" a' r
# j  W2 G' x( @; a& e        Agent(char id) {9 Z, |6 H$ `$ D
                this.id = id;" `3 M: \" R! s/ @- ~
        }# I( i% s+ |3 m  ?% F; o. S

7 @+ T/ K0 H  z6 y        public void agentStep() {
& _1 }+ h, Y; _2 F  B: V3 {  V1 q  m                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 w8 _/ f4 q  `1 T        }
: q! T! L0 p7 b: p, a! h- u9 R! L}
$ F5 z) o% e- j( \! A; P1 C4 [, W# ~" U/ w
public class ActionGroupDemo extends SwarmImpl {. r/ Y5 O' s" k/ }( r" e/ {+ V
        ScheduleImpl schedule;
8 m, g$ |0 c) j8 F1 V7 D) q        ActionGroupImpl actionGroup;. [8 T+ n) ^3 U$ V2 C& X: [
        ListImpl list;
; ^. G( X, [, t8 ]        char Id = 'a';  d) \' Y+ `8 w: _/ v

# ~: F; U% C+ _. A        ActionGroupDemo(Zone aZone) {
- |! p7 T; I. h" P1 ~/ I                super(aZone);2 J0 |  ]; t: U8 _  c
                list = new ListImpl(aZone);% \2 d( |) f4 n3 F
                swarmSetp();
8 Y# U  L0 X$ L0 y) z4 H                actionGroup = new ActionGroupImpl(aZone);
. K% B, H7 F, M/ f+ d                schedule = new ScheduleImpl(aZone);7 l* g- O0 u3 ^  U8 P
                try {" u" u* O$ @0 i) r
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( [! A' r* J+ `- K# v$ H2 \8 n                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 n( F7 K* k! [; p1 D$ i+ J                        7 r% S" H5 Z6 z6 b: v
                        actionGroup.createActionForEach$message(list, agentSel);
1 f: U( b% o. U                        actionGroup.createActionTo$message(this, swarmSel);, N" I8 g1 g% }+ g
                        schedule.at$createAction(0, actionGroup);9 f3 p3 G" d3 {1 Y6 B" t& q' s
                        schedule.at$createAction(1, actionGroup);' R& g! z+ C. V
                        schedule.at$createAction(2, actionGroup);$ `0 ?& V$ [( m6 ?  q

& @* R" u: |9 X  @' v                } catch (Exception e) {
* P/ ~- G" p8 Q# F                        e.printStackTrace(System.err);
& e/ B4 t, U9 l3 x: p2 z& r                        //System.out.println(e);
' n5 S3 b' E/ U( T: z                        System.exit(1);
% ?  v3 S7 M# ?) P, c' {4 P                }
- p1 K& k0 D4 j. R4 J, J3 K% |1 g- O5 S( V- d( D
2 k4 ]: ?1 D1 `! U) V- |% D; c
        }1 m; S* o# A2 o! N/ u& `
' a* V2 O( j* i  q9 p+ Y2 z
        private void swarmSetp() {6 r2 h, x5 j& e0 h. c
                list.addLast(new Agent(Id));
( W' U8 L' S. W. j                Id++;
5 C* c' Y& j* t* W        }
% x. \5 @4 i8 U" w3 E# A+ e3 B6 {  S) `* l( F
        public Activity activateIn(Swarm context) {0 w+ S9 `1 R; Q0 {* F' n
                super.activateIn(context);4 W( c- N- \. {1 E
                schedule.activateIn(this);# `' r6 @- ^3 d/ C
                return getActivity();2 V! u% T3 W5 ~5 a
        }# M% z# z9 y9 J# ]" m% ?! p
# k. b) r7 f2 N
        public static void main(String[] args) {
' [# X' c$ k# w8 w$ R( |                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 d" e* f9 R: N0 i. M2 G. l
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 i& b0 q( i7 l' q: D                swarms.buildObjects();
8 e! d, B+ B$ |& K6 p( J. I                swarms.buildActions();5 ?: R" Q; e# r/ ]
                swarms.activateIn(null).run();
8 X1 O) o. y, R/ f        }7 w/ Y; Y) R/ F1 z5 Y5 f* T6 ^9 I: {8 r
- A8 C5 I  K( S! _' _
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-6-3 00:56 , Processed in 0.014301 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表