设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7708|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; S( {2 w( i/ h3 {, I1 E$ @6 ~, J2 \4 r$ i) s  X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 ^+ O: G+ {+ X. z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 u  d# i: a* t4 m& g
swarm.SignatureNotFoundException
) F( K8 V, p0 Z2 x; J+ d        at swarm.Selector.<init>(Selector.java:76)
0 P+ E: l6 W7 d8 d; R* q% ?9 {5 R# l        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! m& N! O) C: _
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
) U4 {7 h6 _. |) y4 b, S! A2 Q& ]
8 N! P& V6 g3 L1 w& C5 k9 F8 F
6 T) S5 k+ z) e1 }( Yimport swarm.objectbase.SwarmImpl;
6 N, H3 w9 y3 q' simport swarm.objectbase.Swarm;2 m* z" i( _5 p$ i- V' e8 h
import swarm.activity.ScheduleImpl;5 [$ w7 w, K' P7 ~$ `  }
import swarm.activity.Activity;
% J: |% Y1 @0 Z( F) vimport swarm.activity.ActionGroupImpl;
, B/ v0 [+ O. \import swarm.collections.ListImpl;
9 r/ G: |& s0 h% |: Cimport swarm.defobj.Zone;
  n# T1 z/ A# Y$ F% _4 Jimport swarm.Globals;
4 w7 Z% y6 E- q5 I- himport swarm.Selector;" {1 z# C6 e3 F( ]1 M) [
import swarm.activity.ActionGroup;   R$ W* _9 l: ^6 E
class Agent {
! t! R* B9 {1 {) @+ v        char id;& F  k3 }6 E% I) B

% t% \  x8 F7 F' Q/ E0 c        Agent(char id) {( J$ G- m; k, j8 Z: U
                this.id = id;' v0 o' [0 L9 b- Z8 L
        }
2 Q; ?6 r. C4 l( b$ `3 G; R( Z
& r" T4 {) }5 \; u1 V& R9 {0 ~0 W        public void agentStep() {8 i$ U5 j3 @$ U. F3 {* y
                System.out.println(id + ":" + Globals.env.getCurrentTime());( B6 o) s; M! [' L$ e0 f
        }" s1 v" E) D2 N0 \8 `
}
' F( q9 ]4 d+ ?9 L6 G* J
! B. o4 \! c* Y" s( jpublic class ActionGroupDemo extends SwarmImpl {
; H% w3 ~. A- p# M        ScheduleImpl schedule;
, T& a) V4 z9 t$ V1 H0 _$ {        ActionGroupImpl actionGroup;( Y% {" {, R$ z
        ListImpl list;
4 g7 f8 T  b  ^0 I        char Id = 'a';
' k" G0 K7 c0 \* V% r6 g0 F- U6 |3 e4 C- n0 ~# g* e+ P
        ActionGroupDemo(Zone aZone) {9 h- `, b% c/ V0 R& C
                super(aZone);3 v) P. B: i" q6 V
                list = new ListImpl(aZone);. V3 {) h' E! A6 f: I" E; _5 x1 E
                swarmSetp();! C! \5 ]/ D4 w
                actionGroup = new ActionGroupImpl(aZone);
) v: K% S6 `% g) _8 `                schedule = new ScheduleImpl(aZone);
; p8 ~9 _7 l8 r0 Y1 U4 r0 @" d: x# G- e                try {
* O) {% f' `) d+ y                        Selector agentSel = new Selector(Agent.class, "agentStep", false);4 T# ^# Y! }+ }" P
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& M+ I- |; z0 J
                        
: ~6 K4 R% e! m                        actionGroup.createActionForEach$message(list, agentSel);
  ?& D# b2 h) E! B8 p                        actionGroup.createActionTo$message(this, swarmSel);0 ~8 i# c; M+ f2 A. x
                        schedule.at$createAction(0, actionGroup);$ V0 I) \7 f( }+ M; `
                        schedule.at$createAction(1, actionGroup);
) @# F  g) C5 j' W! p                        schedule.at$createAction(2, actionGroup);1 W$ @; u* t( o6 W$ |8 \

. v8 d( R0 u' X/ K$ N                } catch (Exception e) {$ y6 X# {  u" T9 l% q% z3 u; n4 Q& s
                        e.printStackTrace(System.err);
# {4 s; v/ k+ o# N                        //System.out.println(e);
5 a" J" y" U. U6 j7 T/ p$ M                        System.exit(1);
  v3 j2 Z: b( `: U: u0 a, Q: s; T4 h                }+ v, d* P8 f1 Q* T9 ~+ l
3 ?5 L* {7 l" v

4 q+ S: @0 a  v% @9 r% g        }, V4 s7 F- h- w0 Z! h3 ]

. C+ y* n. Q3 K7 G; T        private void swarmSetp() {
. m' ?% o0 u) q7 `1 @                list.addLast(new Agent(Id));
0 a9 T( n1 Y8 N; T8 u" d) c                Id++;
; Y8 u: W( O1 Q1 {2 z        }
! \& X* A/ R0 R; f2 i
5 @7 P5 n( m, s        public Activity activateIn(Swarm context) {& U, i( {( w. X, R2 l0 q
                super.activateIn(context);4 \; I; h  j0 S: }9 {3 m6 J% \
                schedule.activateIn(this);
: m8 I/ c& |, G+ }) D                return getActivity();6 G1 D. T5 P. j0 ~1 D/ f! l5 i
        }* X. o$ B4 b. H& ]
  }! w8 n  }# f6 r5 s% E9 y6 o
        public static void main(String[] args) {. [: D# C8 H& b  N, Q( g- d
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 Y& D' f" L0 ~/ J  y8 T
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 x4 R; A5 z+ h, w. q2 ^
                swarms.buildObjects();/ J6 G/ y- G. s4 L/ O* l
                swarms.buildActions();% Y+ L2 s; s: S6 ^
                swarms.activateIn(null).run();
9 y9 }' w3 u# V/ v( W8 D        }
" R8 d5 s0 }+ `5 g4 D- U, r* n) p4 z' H7 D
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-12 04:30 , Processed in 0.016170 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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