设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13114|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ A) a% V6 f3 x6 |* L, ~! T2 a
# s5 u9 d8 R$ [( u" ^% n1 H$ U本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* J- ?4 Z) R0 t' C/ Z$ V' W以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! J2 e$ l& U% S$ _# z' t& A1 k2 _swarm.SignatureNotFoundException
4 Z6 ^, B6 e5 u0 K8 F6 }7 H        at swarm.Selector.<init>(Selector.java:76)
! B) \, X+ ~; U. W: z        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ O/ {% q! U" M) |; k        at ActionGroupDemo.main(ActionGroupDemo.java:67)( W  e0 B5 {3 f0 H

; m6 i) @( {4 Z8 K( q* V0 z, ]4 W6 v" A+ B2 S
import swarm.objectbase.SwarmImpl;
$ i3 ]4 n! u' q8 Oimport swarm.objectbase.Swarm;3 q; o( i$ B$ s+ E8 b
import swarm.activity.ScheduleImpl;
: O9 |( b9 N3 [: }& b- wimport swarm.activity.Activity;* Q$ x/ Q9 L1 D% L
import swarm.activity.ActionGroupImpl;
0 ?" P' z9 A, X( a, L; @! l: uimport swarm.collections.ListImpl;
7 }5 m* I- @1 z: [, w3 w6 iimport swarm.defobj.Zone; * ]: e$ p5 z: ]
import swarm.Globals;, T2 S# E/ E- }& e8 [* y1 k
import swarm.Selector;" R% X2 q+ L& v/ x: c/ r, i
import swarm.activity.ActionGroup; 8 q" X+ v! _+ g' |
class Agent {
6 R3 d$ v# Z/ G$ I" j% ~        char id;
  g  ]$ o: z- V5 j$ \
( @3 ~/ R( g: ]0 R$ H        Agent(char id) {
8 r2 x* f2 S( D; u: b( I" @' e5 T                this.id = id;" m8 f0 B7 Q' G0 w) z: [
        }' a% u* |1 k. ?) \$ c" a
0 Y  {; ^$ J9 N$ ?7 i7 V" i$ \; I9 ?2 [
        public void agentStep() {
0 n( N, Q. N2 z& P                System.out.println(id + ":" + Globals.env.getCurrentTime());
. }7 F: w5 @" q- Q2 Q  q: Y( C        }  I' S* W) R, |& A" ]
}
1 Q! G1 x& I* F( I5 d) ?
. g" L* {4 {( O/ F4 L6 j7 r3 ?public class ActionGroupDemo extends SwarmImpl {' v3 K9 ?1 S. t
        ScheduleImpl schedule;
% u' G5 v3 c# v, s& |- Q        ActionGroupImpl actionGroup;
2 h' ?% ^- y4 ], B        ListImpl list;
3 C/ H% X7 M- M% J! A* W        char Id = 'a';. l& t# d  h2 K! s) @. S

4 \; h4 B3 C& k2 W" J9 L0 K: l5 m        ActionGroupDemo(Zone aZone) {
! w! |5 N) ?5 h- U5 q: O+ M5 }                super(aZone);6 E7 H) h3 _4 r6 g
                list = new ListImpl(aZone);
! x# f. w, e7 y- f8 {                swarmSetp();5 a( b/ u0 a0 o
                actionGroup = new ActionGroupImpl(aZone);. f! A) R3 O. A, I
                schedule = new ScheduleImpl(aZone);
3 h* G9 `( ~! W; S( Q3 P7 g! w* P                try {
  v$ Z, b- d8 @$ n; T% x! Z9 f) u                        Selector agentSel = new Selector(Agent.class, "agentStep", false);6 {4 n$ B8 N" G# V; g9 V* y; ?
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 v7 o; \. T" U# N) ~$ Y* [                        " G' x# a9 T7 B2 T  k* W
                        actionGroup.createActionForEach$message(list, agentSel);/ O9 B( X% V8 o& u8 {1 v! i
                        actionGroup.createActionTo$message(this, swarmSel);
% ?  I1 V# @$ Y8 u1 q+ X                        schedule.at$createAction(0, actionGroup);
, e  ]7 d9 _0 q6 s; f. b4 Z* A7 P+ J0 a9 `                        schedule.at$createAction(1, actionGroup);
/ J, R0 D5 L% A& B; q5 A+ K2 ?8 Y) v' r                        schedule.at$createAction(2, actionGroup);" X1 |3 G& o6 L4 H1 T. S7 h  p
- b) X! A* ^% B3 T; z) |% a
                } catch (Exception e) {# x: G  F  D$ ?+ G* R! f5 ]2 G4 Y7 i
                        e.printStackTrace(System.err);5 p8 j+ Z% R; I, Y- [* q
                        //System.out.println(e);9 j  j6 }8 \5 U5 ^' e/ o# q0 r
                        System.exit(1);
4 o8 K! {1 l4 }! Y- w% V4 D                }  Y6 y' ?  Q2 i7 V/ [

2 w" A$ ]: R7 ?: T( U" N. f- C" q. k" l/ ?/ \3 ^
        }& h2 Q& I) @/ _  y, s) _: h# U

9 J/ I5 Y) l# n0 t$ r/ z! s& l' ]        private void swarmSetp() {
& Q% m: R4 ?2 @( k                list.addLast(new Agent(Id));
8 b3 R- ~% o9 x% j1 T                Id++;  \8 |$ a. a- I$ s
        }
2 J" x5 M% M; f( B2 o% G: G! j2 i+ H. y
3 ^  w. H% D" ~9 X        public Activity activateIn(Swarm context) {+ [! c# [7 Q( V& x
                super.activateIn(context);
! g7 A* [/ u, q; B3 Z                schedule.activateIn(this);
  C9 Z& s3 r4 J. b                return getActivity();
  E0 v$ }' }2 p0 ~* T8 V6 I  o; S        }1 i6 s1 X" y& s* _

" @# N, W4 x; i( k        public static void main(String[] args) {
6 a  I! g$ Z1 B! \  @$ A9 p                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& j! y, Z3 f$ f) H8 L. H4 q: p- f7 D                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, `. G9 N- C3 d5 D% B+ d8 |( U
                swarms.buildObjects();
7 P  s$ J1 D/ v+ F/ ?% s                swarms.buildActions();' S3 W! h  |3 x1 z9 Y; U
                swarms.activateIn(null).run();. O; B0 g1 ~' N8 C8 a# A
        }! c; a0 G4 |. i4 A, s0 t

4 }0 [! I' R8 w+ {1 Z3 j% ?: P}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-28 18:06 , Processed in 2.952980 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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