设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13679|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; y. B& h( W3 Y' g1 E# y9 j1 {# s1 W" m8 }$ y. y+ T
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 {' D1 f/ V. ^3 k( B  ?  I* G
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ Z% d6 J' j6 g
swarm.SignatureNotFoundException
- w7 \$ t& P+ N0 r# t4 [        at swarm.Selector.<init>(Selector.java:76)9 ^6 L' e) |% Z! I$ K2 N' g& [
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 E! {4 X8 r. d7 K5 p        at ActionGroupDemo.main(ActionGroupDemo.java:67)
, E* R; j: k8 \, {4 P0 F& ^- E$ n* h( @

( y# S7 t% s; C. V, E! Timport swarm.objectbase.SwarmImpl;9 Y. z, u2 a5 x( n' J8 U
import swarm.objectbase.Swarm;% W& h6 T& J9 u4 }# G: y7 H
import swarm.activity.ScheduleImpl;+ s; V7 I" u7 B( d+ L& G* P) D
import swarm.activity.Activity;- ~* t. C- T' b, W/ O4 }0 {' V5 P$ ]/ s
import swarm.activity.ActionGroupImpl;. `; U. A; m* b  L8 l
import swarm.collections.ListImpl;
: Y* x/ B7 Z, p# @, Z- c3 e3 Mimport swarm.defobj.Zone;
" Q6 M* E& f/ v& O4 d/ aimport swarm.Globals;: k. @: r- A5 I+ n
import swarm.Selector;
  t# Y9 }# M* T* Iimport swarm.activity.ActionGroup; : b- c/ i& x5 w1 w$ W0 i3 m
class Agent {/ d, W/ o3 {9 B+ v
        char id;
: g9 `- N! o; l2 S1 L# c$ x: Y" e
* i  f, [, y) |+ U9 }7 C        Agent(char id) {5 Q% s# }; k* M& b0 E( t( r
                this.id = id;
' ?: |* L- F4 a5 d. f4 M7 j, S; s        }
, C1 C8 {/ R' A4 v2 }; h
1 F& f; [3 E, V+ D: ^  m  J. T& S        public void agentStep() {/ n# V) Z1 F  y0 W) E# z4 z- @: x
                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 q$ ]% X& M9 ?8 M9 @. x/ ]/ o        }
- H1 e: j& d* ?' ]1 |}' c8 M9 n, o7 f. D( [0 M1 g

& P; `. u4 X" Npublic class ActionGroupDemo extends SwarmImpl {
. C/ L' ^( E+ v/ k$ F        ScheduleImpl schedule;4 m9 X% a* G* D
        ActionGroupImpl actionGroup;+ D7 d2 k2 T5 t) g2 v5 b
        ListImpl list;9 I, Z1 ]0 @+ `( M
        char Id = 'a';. w& I4 z" X2 \
& L" g6 _7 b& ]
        ActionGroupDemo(Zone aZone) {
  Y. @( c/ F- x% d! K                super(aZone);) e3 T4 m/ p4 j/ }
                list = new ListImpl(aZone);
1 W$ v: ~$ H" X: X" ~                swarmSetp();
' Q1 c, b. x: b, a) C4 L7 l. F                actionGroup = new ActionGroupImpl(aZone);' J$ f: W( w1 ^8 Y
                schedule = new ScheduleImpl(aZone);
5 p) d/ j4 _6 v% z0 L6 ]) S& }                try {% q- ~) t2 H, V1 ~( B" g  z. A& J
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 |+ k% H* v9 W0 f  {: k3 F                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% l- b  ^. E  }: d& U$ G8 i( Z8 e                        ( o& h: G( ?" Q3 J$ t% ^" t! E
                        actionGroup.createActionForEach$message(list, agentSel);
+ N' E; B9 U! d' z' ~                        actionGroup.createActionTo$message(this, swarmSel);
" g( n  h) Y$ C5 t6 E( ~! Z                        schedule.at$createAction(0, actionGroup);) [; ~3 p8 z9 u$ F( s
                        schedule.at$createAction(1, actionGroup);
, H; h& \) g- F' ]/ n                        schedule.at$createAction(2, actionGroup);
6 [$ u% H* b3 J2 U8 P, c% p3 S+ W. Q8 O. t( m- t( Q; J: m" Y9 u1 N
                } catch (Exception e) {
5 c3 q1 T( S) z# @  d' X                        e.printStackTrace(System.err);
9 |/ C& {8 l& n% f7 n                        //System.out.println(e);
* }$ E/ X, ?4 S: P                        System.exit(1);' Q. q& y! b2 ?  }$ N6 h
                }
) r0 l- k6 c& W" q/ b0 ]3 K5 A' Q/ s

. I! X' B- a7 o8 d        }+ _2 F: q3 f+ |4 w* e

0 J6 i1 b6 S" I9 I* o1 u        private void swarmSetp() {. Q6 w5 b/ Y% h  K/ u) c
                list.addLast(new Agent(Id));# C+ n& X0 Y6 u& a# F8 b
                Id++;
0 q  J: [7 k) c+ W# H        }
0 ?7 H6 s, u- w- ~$ [6 Y* o6 y* I+ \
        public Activity activateIn(Swarm context) {5 F0 s0 A5 Q# P0 s; c
                super.activateIn(context);
6 K+ ~+ W: H1 U6 i9 l8 I                schedule.activateIn(this);
( N2 V! A7 h1 r0 _2 }* T                return getActivity();
1 R2 \) D+ e( B8 D# M" t+ M        }4 O- x5 E; O, F) x, e8 N. y- V
2 w! Q) T2 k) d1 c+ ~1 ]# p
        public static void main(String[] args) {7 g3 c8 O* M3 Z5 \6 P# j
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 U  G' O% X+ H
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, i) H2 n' d1 g% |& I  d4 K4 v
                swarms.buildObjects();, j' c& e+ m) R0 i- K; U2 ]
                swarms.buildActions();7 g% S, }7 r9 `/ s1 p
                swarms.activateIn(null).run();
, z/ e' r( k7 t; l" U8 F4 B        }2 E4 ]( T4 X  K0 {2 S( i: v

" l* ?9 C4 p9 q0 j7 ?+ w}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-14 13:01 , Processed in 0.015201 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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