设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7423|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 b' Z) V* b; b
0 t- o, z$ Q; u! a+ J: r* u+ g. M
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: u9 @2 c) w  b" A5 C* {4 [* [8 D以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* B$ p& j5 j' t" [, nswarm.SignatureNotFoundException
( b, ^) [5 M! {' u8 f; n  W        at swarm.Selector.<init>(Selector.java:76)0 x- g  i1 d7 K( Q
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- L6 D# l8 _9 X6 T% s
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
- V% F" E" t' J
. p# t5 m6 A7 b: c' d4 M3 [0 F. l% o) Q5 W0 N/ [' \3 `4 r" ]  Q
import swarm.objectbase.SwarmImpl;
! ?3 [3 x* b0 e( Ximport swarm.objectbase.Swarm;% W. m. |1 ]5 B8 K
import swarm.activity.ScheduleImpl;! O% t1 W6 N) _* _
import swarm.activity.Activity;( C! ]( Y; G( ?" ]2 t- @
import swarm.activity.ActionGroupImpl;/ ^- y! r  @" c1 U
import swarm.collections.ListImpl;1 w9 @2 y' W; u, Q& O+ y
import swarm.defobj.Zone; . i: u" d4 V- O9 x
import swarm.Globals;+ z. n# Q  e  q; ?! i
import swarm.Selector;
! T; G8 W* a- P/ Gimport swarm.activity.ActionGroup; ' T1 ^$ p; P, R
class Agent {
- `* v: g  V: s, k3 H% u. T5 T        char id;/ P; A; _3 L% }) b+ ]' F
! ^6 T* A9 [  Q) p) w0 h
        Agent(char id) {
" X: p! t$ \" |                this.id = id;
8 C7 N9 I- n; a& V: G, O        }) z- ]/ C5 _& Y5 N( i

# N! M" @% i0 c) V) o/ B        public void agentStep() {
5 O: P6 W* U0 q. o8 A. [                System.out.println(id + ":" + Globals.env.getCurrentTime());/ {, s' k( _7 ^2 W, Y
        }. [. h; v9 y/ {  N# l7 b
}
8 C$ [4 ]0 d4 T0 a. b) h3 _* T+ B/ H. H+ g$ K% o3 F
public class ActionGroupDemo extends SwarmImpl {
" S  }$ c0 I+ H" o7 V- N. ~. q        ScheduleImpl schedule;
* p7 \( I3 m; _5 B/ @        ActionGroupImpl actionGroup;) }, z& a$ r9 H3 I/ s
        ListImpl list;, Y0 D2 C6 U8 t  P) ~
        char Id = 'a';
  M/ u: j: j2 y) Y: ?6 S1 ]2 r
2 K/ b0 g* D9 e# c$ m  H! H" U        ActionGroupDemo(Zone aZone) {) Z6 x5 S9 U2 f- G0 h
                super(aZone);7 \: B6 N2 |% y  G1 |! u
                list = new ListImpl(aZone);
9 V2 r" C+ V! w  ~( X# c                swarmSetp();! r' _( }7 {4 A  Q8 X) @
                actionGroup = new ActionGroupImpl(aZone);
5 H! q# j; U8 u% L7 W5 S9 d                schedule = new ScheduleImpl(aZone);
3 T; i) g2 U4 f7 O$ A4 G5 {8 ?5 Q' n                try {
9 V3 e. H( n/ }5 T                        Selector agentSel = new Selector(Agent.class, "agentStep", false);6 \2 v) a& \6 b5 l3 y1 R
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' M/ z) j8 ~# F8 z                        1 u8 n" N+ ?$ x
                        actionGroup.createActionForEach$message(list, agentSel);! L# B( I1 i. R9 |% q3 i
                        actionGroup.createActionTo$message(this, swarmSel);$ D3 n. k4 f* e1 @2 ~5 k
                        schedule.at$createAction(0, actionGroup);
/ K. X& k0 y5 p/ h                        schedule.at$createAction(1, actionGroup);0 F  o2 I8 T, i6 s7 ]
                        schedule.at$createAction(2, actionGroup);# X1 }1 u6 r9 E0 ~. n1 B, {( H
" r: |$ S: l& H" D8 P
                } catch (Exception e) {
: R! Y* H% `) v                        e.printStackTrace(System.err);
( w+ j8 _& n. `" W! w) U                        //System.out.println(e);
. y- x& h9 g% @- N2 B                        System.exit(1);
/ |3 G1 L; _& C9 m                }& w' `0 C) T5 A9 ]9 G
  B8 p5 K: ~' Y0 N( W. r7 f

. P  \1 Z7 g/ K# v# z        }
6 v0 W3 U3 C9 G* u, G. |9 k8 h% m% W5 M
        private void swarmSetp() {* \4 x5 z- E  U! Q+ J
                list.addLast(new Agent(Id));+ m; a; L8 I: g/ W/ u$ \0 l
                Id++;; {2 D3 u' T- c2 ]6 J
        }
; v0 }, C: T0 G: N6 u5 |! c, P
( w# m4 ^* [% _. o! g        public Activity activateIn(Swarm context) {
% ]( ?' u. V4 L" X                super.activateIn(context);# s! L% r8 F, Z* W8 c9 K
                schedule.activateIn(this);
. y9 u& h  e' ]0 O8 A( ~                return getActivity();  O2 L% F6 y) v# g) W9 m
        }: m+ a  _% y. k: Y# d2 G
8 b$ I6 ]. T6 }' X0 S
        public static void main(String[] args) {" N, D1 Y" m; B
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ i& E: ~2 g+ a: C: Y' p                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, M0 W$ \, \6 E4 [5 [6 H4 P                swarms.buildObjects();
9 d: z1 E5 d/ O. l& w, c                swarms.buildActions();
1 t& `2 W. X2 d6 N6 m" V( V                swarms.activateIn(null).run();
$ P- ^. A& `& c, R. f6 B        }, a% t: g9 C, j4 |$ F
, g; P2 h+ R: K+ F' o2 V8 o  a6 j% q
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-2 05:01 , Processed in 0.020213 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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