设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9104|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + {) D( o7 D  H% q% Y$ k

! j5 @% D, y+ t" j本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, ~2 N6 z: u+ K0 a" |; Z! p2 v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  m3 X9 T( l6 c1 v- J& R
swarm.SignatureNotFoundException  I: Z4 S; c; d: c6 S
        at swarm.Selector.<init>(Selector.java:76)
7 _! d* L% C  i9 i        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 M! a6 U# o9 ]# J0 S        at ActionGroupDemo.main(ActionGroupDemo.java:67)2 L( F) Y. D2 D) R( A

, n( |# h. F* g! d
# r2 r/ R3 v$ w  P. ~import swarm.objectbase.SwarmImpl;1 v9 v: I4 [; q8 d& c9 Q7 K
import swarm.objectbase.Swarm;. G' z& A# F  l; C+ s  i
import swarm.activity.ScheduleImpl;
" r) \8 o3 z* J. n" t2 _- kimport swarm.activity.Activity;+ \9 |$ n$ x7 q! R9 t
import swarm.activity.ActionGroupImpl;
  ^  f7 b* V* T9 U0 H% c/ ~; n4 `import swarm.collections.ListImpl;
& U3 ^1 B, G9 g. w7 k" ]+ @+ u' `# dimport swarm.defobj.Zone;
- S! i3 N3 @  `; u& n$ k8 T- Eimport swarm.Globals;1 {: ]" i" E5 J6 H3 x8 L6 Q9 I. n
import swarm.Selector;
+ o  }/ e* o+ r5 N( {8 L! U7 jimport swarm.activity.ActionGroup;
3 M2 W* q9 g! ~& T( tclass Agent {7 D% f3 ?7 ]# u/ D
        char id;
4 ]; N" U9 I# O% z, b( G& P. K, E; ?/ m* a, [0 C5 D* X) G
        Agent(char id) {
2 a7 v) E/ R# j2 ^5 X  Q/ e7 W& u. H                this.id = id;
- {: ?+ P3 e# M. I        }. W$ k% g6 Y7 S) E( i
3 A: _) I, |3 e( ?
        public void agentStep() {
; V7 W8 g7 F8 l& f6 X                System.out.println(id + ":" + Globals.env.getCurrentTime());5 W9 ^3 m# l. v" H) s
        }
" U6 F1 ?5 I: \' N: I9 `4 P2 _}' M* s7 M0 f% V

2 E! \& ~% C. f! M! }3 E- A/ c: fpublic class ActionGroupDemo extends SwarmImpl {7 _% w- Q7 A1 |
        ScheduleImpl schedule;& p% Q; ]2 ~9 B# |% d
        ActionGroupImpl actionGroup;6 Q2 P& v+ F9 k# K$ E- a
        ListImpl list;
. w9 g: n: O2 q7 ^        char Id = 'a';
: b& j7 k8 S- T4 X) g
' s, Z" `$ K% M* ]# T, |        ActionGroupDemo(Zone aZone) {
3 F& h# y( }- Y$ D$ l7 ?# O; Q                super(aZone);
. B3 m' f& ^  _2 C( a$ f                list = new ListImpl(aZone);
6 r/ K3 v6 h3 \! j$ K                swarmSetp();
* l8 j% u" q+ z                actionGroup = new ActionGroupImpl(aZone);5 p0 Y! y6 Y  P1 c& @
                schedule = new ScheduleImpl(aZone);) ~+ O" B  Z7 u
                try {7 k' n! @( g/ r
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( I. `5 ?9 E8 n
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% M7 m- e7 @5 W0 f& A, M; f! a
                        
' _0 u0 t5 C  K8 t  u5 N                        actionGroup.createActionForEach$message(list, agentSel);
6 A% b3 _, N. ?+ a                        actionGroup.createActionTo$message(this, swarmSel);; K( E4 ?0 K- a3 {5 W
                        schedule.at$createAction(0, actionGroup);3 i" Q4 w- T) j" _& k# L: i
                        schedule.at$createAction(1, actionGroup);: E6 d/ _& J+ N/ x! G
                        schedule.at$createAction(2, actionGroup);
- s, p8 \* E3 j+ Q# d# \$ t* m6 `) t- }) K2 U: A% V% Y$ p
                } catch (Exception e) {( v4 [: W) G: P4 e# a, c% L
                        e.printStackTrace(System.err);
$ ?$ k4 E0 ?2 V; H( J! f/ x                        //System.out.println(e);
. n: K+ {' n4 E! i0 A                        System.exit(1);
+ P- U# g3 S! B% B' O                }
/ q# U. |  G9 {# ?/ X5 h, n- n
; e: T% Z- x/ E, V# G) h
2 W5 [  t& ~# S        }) B% \, z3 B4 F- G

' d) l' t3 }- P1 b8 O* \% }% O3 U        private void swarmSetp() {5 y8 x. }' I- y; X( k7 N& n% |1 k
                list.addLast(new Agent(Id));$ M9 O: k5 ?4 I4 j/ S" [/ O
                Id++;" z+ T8 E6 k. g+ j
        }
: m+ P6 j# n3 L$ z2 ^3 b
6 d0 S! l: T0 A/ u3 _. i        public Activity activateIn(Swarm context) {
# n8 b, v) n' r0 i* V0 F' A2 y* f  k                super.activateIn(context);
9 ^. F) s# ]5 j8 D. q+ {$ Q: [* }8 C                schedule.activateIn(this);+ r+ _& U9 q2 l6 j4 g
                return getActivity();, @$ M, S3 v7 J
        }0 o. S6 L2 {0 c( B; ^, G* ^2 U
' ?% v. g" \8 P1 R, C
        public static void main(String[] args) {+ w! `. z9 K9 }# W* b! a  U/ g
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 i8 M+ A. |+ |$ P. _                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" d9 G( ?/ f* u5 w% r                swarms.buildObjects();7 V0 C; ^$ J$ `4 }2 r8 q) k. D' C
                swarms.buildActions();; |$ o/ l3 E5 u! W7 }( O
                swarms.activateIn(null).run();
- z2 y, D, O' x' K        }
8 A$ ^. l6 |$ W- _# m/ h
5 y3 N2 m1 J, w) T: F}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-1 13:30 , Processed in 0.015619 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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