设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9148|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * l  m# `. p  `/ g4 ]
7 v  V2 t# q5 F7 j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: }! a7 Z; K6 n0 ~) y' U$ B; d
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% i, j% X9 _' ^+ ^  P6 g7 H" bswarm.SignatureNotFoundException
; Q0 Z  C! ^. t        at swarm.Selector.<init>(Selector.java:76)
1 T/ d9 t$ i0 V7 q6 _- G        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 k- g2 \' v# |* o5 b3 x$ o, c        at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 i( F2 {' H+ v. L$ E
! F: z1 K/ o) b9 ^5 i* a3 }" x/ j2 P( @
import swarm.objectbase.SwarmImpl;
3 S/ o! d  Q( Q: ]2 c  {- cimport swarm.objectbase.Swarm;/ |5 T, j7 H# ^5 v' d5 @0 ]. |
import swarm.activity.ScheduleImpl;
" d3 `$ j6 Z! a' e" y' D) Wimport swarm.activity.Activity;
  D$ f  N* J1 V/ I+ C. E. Q( Bimport swarm.activity.ActionGroupImpl;! ]8 Z" v. ]3 T
import swarm.collections.ListImpl;: K+ K/ u9 t; O' e- Z
import swarm.defobj.Zone;
# B: Y+ e/ a: w  Z* limport swarm.Globals;9 b1 d! w2 c  G
import swarm.Selector;
& V0 D/ Y. z5 C$ Rimport swarm.activity.ActionGroup;   A0 E: r9 \+ D6 \, T! z
class Agent {
$ J# g" Y+ M! s        char id;
$ U, x- q8 p7 E) ^5 j) F( T% u1 q; M
        Agent(char id) {/ e, d- c% ^0 e
                this.id = id;7 b! v& l0 t: x& t& w+ g
        }7 N) ^" F0 P9 D$ A' }3 D8 j

0 H  J) Y; x) S( q2 o4 n        public void agentStep() {
; X" q, o- \( Y/ ]9 R% p                System.out.println(id + ":" + Globals.env.getCurrentTime());0 \$ V' v# s# A# T# U
        }4 E' r0 N! G  g/ _
}
5 k* R. r/ W7 Y3 S5 ], B- I$ O
3 ^0 k+ X; h3 B4 A% }8 D) \/ Bpublic class ActionGroupDemo extends SwarmImpl {# ^) j' H4 b" A* n& }) s6 S# @
        ScheduleImpl schedule;4 _6 X9 p, G1 |% V/ @  y/ m
        ActionGroupImpl actionGroup;
6 _6 G( [4 v, {( N        ListImpl list;8 z6 k$ p( M$ X% Q. ?, \" s1 a
        char Id = 'a';+ F, Y5 v0 W9 T9 [

0 `. N0 u. F: a# U        ActionGroupDemo(Zone aZone) {: i3 [) e6 u$ U% ~
                super(aZone);( W% `  Q" A7 I5 `
                list = new ListImpl(aZone);: Y! N+ E6 F; r- I! M: _
                swarmSetp();; o' _% z" l. J- c
                actionGroup = new ActionGroupImpl(aZone);
: a4 i9 V$ y( p1 X. R. r7 k                schedule = new ScheduleImpl(aZone);0 F( j+ G- ^! s) [
                try {7 Y9 m9 R; V8 V  h" r
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);5 Q' {. n! v. \& R0 J6 S) Z2 d/ e6 E
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 E9 H/ C9 y/ V: ?. v% [( g
                        ( V$ a* L7 i/ F- k0 c6 i1 H- \
                        actionGroup.createActionForEach$message(list, agentSel);
% R, l+ W0 a- L: \2 i9 B                        actionGroup.createActionTo$message(this, swarmSel);
4 {: ]8 |% ^4 u                        schedule.at$createAction(0, actionGroup);8 J5 {- r1 H! B1 D/ h8 y
                        schedule.at$createAction(1, actionGroup);
. F) e# ?! |  m8 L                        schedule.at$createAction(2, actionGroup);
$ {9 r7 d6 e6 l" V" G6 H) Y1 B5 Y+ N8 g, K6 V
                } catch (Exception e) {1 ?# G  b7 C8 d7 A4 x2 F: d% M3 y
                        e.printStackTrace(System.err);
/ _) d8 F3 Q3 \                        //System.out.println(e);% d3 e6 M# z5 P4 A6 ]! b
                        System.exit(1);
6 g  L1 u4 @9 f0 W5 ]" d5 Q' E                }
; y: D0 [3 G. C& [) g* \) Z) d9 h2 r& s2 Y( o  Z8 C  ^
- d; k2 n) ]( G( I. F* a6 N
        }
( l% ]( @. E5 s' Q1 |8 }
+ Q5 S8 i! |' P+ I! `" J3 K        private void swarmSetp() {5 K7 Z' K4 w, z6 r
                list.addLast(new Agent(Id));
$ x6 A! f+ I0 J0 J6 P. u! b                Id++;* Q4 g  e! l" y2 x* X3 l$ G
        }0 O( \& ~& @- g0 _9 N
! s. a5 @/ m& w7 l
        public Activity activateIn(Swarm context) {
3 V  S. C: _# M$ T                super.activateIn(context);' W4 n+ ?* c% h: v# f" H
                schedule.activateIn(this);
+ C9 e: F' A! ?6 U  m# i& D. p                return getActivity();
4 x5 c; K' R2 ^, B# r        }
2 p  ]" M: s, l. t7 B9 s' L9 O8 R% s
        public static void main(String[] args) {
; u. j" `" G9 z1 M8 E                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);  H+ s  `/ J3 g4 z' \
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* A1 k1 m# M4 L# x  ~: h) O
                swarms.buildObjects();4 ^$ q* B4 h$ P& a7 V  [; o
                swarms.buildActions();3 n* M4 d/ O$ G: K) A( }8 _$ J/ u
                swarms.activateIn(null).run();
7 s: e; ], D* v        }
9 N9 j  K! {4 F7 v7 s/ v& b; Y. X  }+ J
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-2 20:26 , Processed in 0.019279 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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