设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11827|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 P8 n; k* s4 l5 i$ [5 k1 k8 p. T3 [8 Z# k* F* D+ c
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ u0 P1 U, m0 `, D3 W以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 }5 v, @* Q) W1 s
swarm.SignatureNotFoundException
. }( B9 I% o1 L2 u# N5 N        at swarm.Selector.<init>(Selector.java:76)7 B, @& H, N. w7 ~' X
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37): }, @" A- i6 Z3 n& T
        at ActionGroupDemo.main(ActionGroupDemo.java:67)2 G- g2 f5 Z) M% T  R2 s  I
6 }- s6 v. ]) {/ ]1 O
6 e- A2 A" I* ]; l  ^: i9 D. a
import swarm.objectbase.SwarmImpl;$ R/ f8 w& e2 a+ r6 ~' S& Z
import swarm.objectbase.Swarm;
- F7 G0 v. S" v8 @" o8 B# uimport swarm.activity.ScheduleImpl;! Q# H# y/ j% x( {4 _, Q" I. p
import swarm.activity.Activity;: w4 y9 C( S/ g! K
import swarm.activity.ActionGroupImpl;2 O' J) ]  N/ x* S: N
import swarm.collections.ListImpl;
# p$ D- ]% @3 w& V: Z" ~& J# v5 }import swarm.defobj.Zone;
5 K' o8 h. @/ P+ x! N9 Uimport swarm.Globals;
7 w/ e5 ]4 Q* ^0 O( ]! ?' Uimport swarm.Selector;
" n5 F1 D# Z  L: M9 d  p# uimport swarm.activity.ActionGroup;
7 V# x) x6 X: A* ]/ V. oclass Agent {
& s: C% M  c& N  q# A! m) y        char id;
+ N2 F$ N( K4 h* Y$ z/ F" L& e& i# B8 W- n" I! y
        Agent(char id) {
% s4 y& I: _- {& n+ u                this.id = id;! z; t! ^+ p+ b- O# e9 J
        }, H8 O! ]  z2 z

/ b/ o& l8 U) Q& @        public void agentStep() {
& M( M) V) _) O                System.out.println(id + ":" + Globals.env.getCurrentTime());
& z+ o& X1 ^& W7 f9 ?: [( L- C        }
: U) J0 E! i) P3 ]! |6 _4 E1 c" Z}2 d9 Z" T  E: ?( d, A5 Z* {; `
  s6 \! }  A+ k% q0 Z
public class ActionGroupDemo extends SwarmImpl {9 S+ Z! `2 Y8 m7 L( f! R# |
        ScheduleImpl schedule;' c7 }6 h; q! C+ q  m0 A; P& w% I$ z
        ActionGroupImpl actionGroup;# s/ ~+ d" Z6 o- g' a  f
        ListImpl list;
: x3 E; M/ J) r* s        char Id = 'a';
7 [' j  t# \. j) n- p% r3 ~9 |+ L' b. H, k
        ActionGroupDemo(Zone aZone) {
- |: t/ a7 U4 D, h, ~2 o( R" q9 a4 ~                super(aZone);
1 ^$ [$ J& ^! S( y6 E9 x9 L                list = new ListImpl(aZone);
+ f2 a8 o0 m4 ~- w! q, a0 R/ Q9 D                swarmSetp();5 J4 z' F2 {5 a3 ?/ P
                actionGroup = new ActionGroupImpl(aZone);
% a! E) j+ u8 h2 t" ]                schedule = new ScheduleImpl(aZone);! L9 v# u9 h+ s$ Z
                try {/ N8 r& T: G$ y  V
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
' S% k2 f, F( N" e6 K                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 `4 P: c# l' j) X9 R4 u* A+ R' \                        
- u2 L- ?7 s' s2 c) [                        actionGroup.createActionForEach$message(list, agentSel);$ U- _( E' S2 V+ x
                        actionGroup.createActionTo$message(this, swarmSel);
; x% d. S5 M) c& O# k* {. l6 c                        schedule.at$createAction(0, actionGroup);
! a; H' @8 e$ Q% {. \                        schedule.at$createAction(1, actionGroup);" e9 t1 t& H% X: {/ V
                        schedule.at$createAction(2, actionGroup);
9 t1 ^7 a& P0 N% z0 r+ g# I( G! M. h  ?* \, A8 D5 Y
                } catch (Exception e) {8 z2 T: k# Z; l% Q+ a9 F
                        e.printStackTrace(System.err);: m( y2 b; I9 U: n! s
                        //System.out.println(e);
* `$ w$ V; v0 x; e                        System.exit(1);: H, O5 v+ T5 w& I+ ^
                }* T' a3 X. _' U+ b8 W' L
" V, p1 W1 @' @& _
1 r6 Y* T% s, v; r+ z* k4 K% M8 V
        }
( }2 ?( G, s, d+ j; Q3 O
$ j0 O: ?, n3 ], N0 B' d# v. r        private void swarmSetp() {
% l7 M, N7 A% E1 Q                list.addLast(new Agent(Id));
. @& d$ e) S5 ~) Y9 D  f& u; S                Id++;* H2 i- }& B9 @, l3 A* |5 ~
        }: ~5 V5 y& F: L) o

2 H$ I9 ]$ }0 r1 x% k6 L        public Activity activateIn(Swarm context) {
+ G( n0 H$ R. w$ n3 ~4 s                super.activateIn(context);; k. ^( h% e& ?1 }$ o
                schedule.activateIn(this);
: h- h! s. C7 Q: `/ p  p                return getActivity();
" s6 |  S4 ]+ ?% N5 S% U$ _        }# Y$ A9 {: ~  [) d* O5 l
$ K8 I9 B& e5 K8 x  P2 c, G
        public static void main(String[] args) {- B5 i9 L8 I) |1 B
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' C& E* ?) @0 c/ B- V' o
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) s1 H' L9 K. }* V% q                swarms.buildObjects();
& q/ t9 d: [5 J+ E                swarms.buildActions();+ y7 ?8 J( |- o! }4 a. x) w
                swarms.activateIn(null).run();7 T' [! i+ r; w" L& W* S/ Y
        }
' [' `* j& s2 }6 P- g9 i, ~
7 s5 h" q9 ]. Y0 C}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-22 23:15 , Processed in 0.014545 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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