设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12156|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 l% e" l, ^2 G8 `+ B
( |. b) T- A' W& C$ d, y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 ?* @4 ?1 \. K0 X) l以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 a- d# t2 K4 c3 n# M3 f& e4 uswarm.SignatureNotFoundException
  `( o5 y: h9 N0 ^        at swarm.Selector.<init>(Selector.java:76)
! K) N4 q: w6 P0 S  D5 n6 \        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ m- f2 j) g; q0 A4 z+ J, |, y/ t        at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 e1 Y( R0 A* }' f6 d5 |+ ~" ]: x. L6 k
: L5 O5 s, b: ?. K& u: o  P
import swarm.objectbase.SwarmImpl;* P, f3 v* s. b& M5 [; ]
import swarm.objectbase.Swarm;
' a/ x1 W1 T; b0 mimport swarm.activity.ScheduleImpl;
$ T: c% x+ o) o* P! ?% c5 jimport swarm.activity.Activity;
& Y$ F9 y7 A  l$ L2 Simport swarm.activity.ActionGroupImpl;
7 f# H; n( m3 x7 K% Nimport swarm.collections.ListImpl;
2 d2 q7 v: K: }, ^3 Wimport swarm.defobj.Zone;
) w( _; n- j, a5 b% Bimport swarm.Globals;6 Q# y8 N' D5 j2 o4 X
import swarm.Selector;( p; B0 p8 w" R0 D+ p$ I* E, O, K
import swarm.activity.ActionGroup; 9 V) _' i# p8 J# s6 g& r5 u
class Agent {# G) p6 V+ b; Y( W# k
        char id;
8 W8 c' c' K+ J7 L& ~% v" N0 w4 B5 b: Z2 L  m: z9 z4 k
        Agent(char id) {
. ]( Y  h! X8 q; F                this.id = id;
2 z( ^* z, h2 n- b        }. O* C8 R8 W/ G$ m1 v, n5 ~
2 \# k$ M/ r. x8 s
        public void agentStep() {% `2 f' D6 s% Z8 t" w
                System.out.println(id + ":" + Globals.env.getCurrentTime());% N; {2 o7 V, |; T
        }& b; {+ O8 U. I+ B
}
) f0 w( y# M0 m& p% w2 Y% P- e' t. U
public class ActionGroupDemo extends SwarmImpl {/ e& V" S" s6 P) [0 ~2 a' A( L
        ScheduleImpl schedule;
8 w' m, d3 n) m! H  k: ~9 r        ActionGroupImpl actionGroup;
4 {, @1 |" l1 S& j) C        ListImpl list;& l# s! K/ [2 p% D. ]+ ~
        char Id = 'a';
8 `1 W: @+ K; M& _4 ~/ Y! j
$ q9 S4 q2 l, n" Q5 z" ?8 ]/ f        ActionGroupDemo(Zone aZone) {
, t, _: ?' j! h6 s7 b                super(aZone);* ], @7 C9 I  e' s
                list = new ListImpl(aZone);
3 @& q6 U/ B/ F: d4 g                swarmSetp();- w" o2 U5 w- E7 K$ C2 p, j: Q
                actionGroup = new ActionGroupImpl(aZone);" _! \4 z9 `3 g  V
                schedule = new ScheduleImpl(aZone);5 K) h) P, P5 m% z5 @9 t7 N
                try {! ^7 Z  B* l! K$ W
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);+ E  _( d5 \% s2 x! c! Y: Y5 \
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; F+ G- {0 I9 O4 @8 z' L" k, {                        
8 i- ~3 h# w8 A                        actionGroup.createActionForEach$message(list, agentSel);
: m1 a8 m8 ~( e+ Y* q                        actionGroup.createActionTo$message(this, swarmSel);
. r4 N0 C0 j8 W" a7 j9 z  k6 L                        schedule.at$createAction(0, actionGroup);
% q" m5 q- N  j6 u8 Q                        schedule.at$createAction(1, actionGroup);2 f8 k3 b7 i# x( d  }
                        schedule.at$createAction(2, actionGroup);0 @! r- _$ Y( Y" J5 r+ z
' g3 ]. i' a8 W
                } catch (Exception e) {0 E" Z$ T8 P9 ]! M5 P$ M
                        e.printStackTrace(System.err);
1 i4 J7 J8 x: S! t                        //System.out.println(e);% s, K& N4 g, w8 q- }, ~
                        System.exit(1);  Q" N% g( \  f. ?" l0 I
                }
' n& F- e2 P+ i! a. u2 v; P* o5 A, X
) x4 _2 r6 ]' p8 Z
        }
" V* H# v- B0 q& G  S. x3 Z* p/ K% \; N5 ?7 W2 n
        private void swarmSetp() {
1 M" p' s. @4 S, D9 O/ c) j                list.addLast(new Agent(Id));! O6 Q1 F& S5 M$ X" U$ B( ^/ J+ @$ t
                Id++;" y6 P: P7 c9 I4 n: a% g# p- ^
        }
7 J( n! {8 U; r" ]' Z- S
( ]6 N* X: g- W: b        public Activity activateIn(Swarm context) {
' u" V* s) j! q: F' x6 B                super.activateIn(context);! E9 y" W* ~# u7 {7 W; k
                schedule.activateIn(this);' }/ R. S  F) I' l/ F% V6 y
                return getActivity();: y6 @  E5 l3 i. P7 Q/ Y
        }# f) ~* W% ~( y9 s* t
8 a7 N, O3 f0 S
        public static void main(String[] args) {; H# }3 m: y7 }5 J  r) M  e) S* S
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" d" ^$ j+ }6 o$ n1 {% i& w/ G                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ z0 w0 y" A: O/ O                swarms.buildObjects();! M0 |0 |) {( P3 H. I
                swarms.buildActions();
: G) T- p% F0 K                swarms.activateIn(null).run();6 v/ H0 }1 b! b5 z
        }# Q( F1 s# f5 o; o7 Z6 I
: E8 b* V' n. ^* w+ e& J
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-31 21:33 , Processed in 0.019059 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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