设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5933|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # Z+ O3 l2 h8 k; e& Q0 X
. l1 [  r. ?! v# r/ q" n. I' w
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ z8 ^  w0 |/ {' l* [1 M以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." j1 r9 m3 `; V, y8 t% a
swarm.SignatureNotFoundException) C8 k; i! T: G7 ^( x
        at swarm.Selector.<init>(Selector.java:76)
, i6 N" G  g* v0 d        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' P* [: s, p" d3 M
        at ActionGroupDemo.main(ActionGroupDemo.java:67)! U9 h8 W! X/ h

6 q7 j* l' V! ?1 m& B/ v% l( n
0 m1 X  P6 Q$ [2 g7 gimport swarm.objectbase.SwarmImpl;# g  u0 a$ y! ?4 O' Y9 h
import swarm.objectbase.Swarm;
- F2 T3 X. r4 Q% [/ c, {3 A& e% jimport swarm.activity.ScheduleImpl;9 l% M8 Z0 t. j0 A, h, v
import swarm.activity.Activity;
+ E. q& o4 F: o# [  Eimport swarm.activity.ActionGroupImpl;0 C$ F& I: ?5 ]& c9 r( l
import swarm.collections.ListImpl;
; e% @: @* \  G- ~) v* p' x" {import swarm.defobj.Zone;
! k7 N$ [+ I1 u6 {5 U2 c: Cimport swarm.Globals;, ?2 G2 e+ |+ l$ B
import swarm.Selector;. e" d" t. r: O3 y6 W1 l) H
import swarm.activity.ActionGroup;
) W) B$ l0 c+ a+ gclass Agent {
4 o6 o: b, }) w5 j! p        char id;5 n; l& C+ f* B, y; [0 H: ^

. ~7 S; }5 p$ F        Agent(char id) {
" J) Y' Y! {: k& \                this.id = id;
0 ?$ W: \& S* ?- T% i$ N        }
! k" J/ i/ o5 u3 B7 A( q$ }/ z7 j6 U* c, ~* y" r
        public void agentStep() {% Z) O7 E/ z9 R0 \3 ]/ ]" @
                System.out.println(id + ":" + Globals.env.getCurrentTime());
  J% \! e  a! Z( ^: a        }1 b* d0 K: m* \4 Q$ H0 I$ f
}
: u1 {" Z; L1 p. n6 ]2 Z+ x
& U" m7 ^* c3 s8 @, ]3 }% hpublic class ActionGroupDemo extends SwarmImpl {/ p7 F% h1 ^) z- t: H/ m
        ScheduleImpl schedule;% r; T* T( X; W; k& D
        ActionGroupImpl actionGroup;7 F% @, {8 n2 A# L
        ListImpl list;
! J% C( {1 q! Y; D1 `: [. X( H        char Id = 'a';( q# \' j3 I; r8 w( J

2 z9 u+ c3 L1 W        ActionGroupDemo(Zone aZone) {
4 m7 `& D! T4 X6 S+ ~4 O# ]                super(aZone);4 i# \4 a: E8 l' ]& A
                list = new ListImpl(aZone);: q' ^' }) _* K- |
                swarmSetp();5 D% L9 l/ R! j
                actionGroup = new ActionGroupImpl(aZone);7 _& J) F) m& m" K
                schedule = new ScheduleImpl(aZone);. r. z; ]5 p! y; a& _
                try {
$ s6 k0 W; B; H) j) x0 ~# v* X0 y% q                        Selector agentSel = new Selector(Agent.class, "agentStep", false);7 R9 H' H/ o5 V% {
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" }7 b  {0 ~# ~7 y
                        ! C+ w9 Y, c0 A7 Z+ u- D
                        actionGroup.createActionForEach$message(list, agentSel);7 h; ]- N/ h4 A* b0 ~) `: v. D
                        actionGroup.createActionTo$message(this, swarmSel);
* }$ M; w0 `* A0 U                        schedule.at$createAction(0, actionGroup);
) y& H- Y8 E) }7 ]" l& ~3 K2 N                        schedule.at$createAction(1, actionGroup);7 i. i1 L" \+ |
                        schedule.at$createAction(2, actionGroup);
3 U2 @$ y1 D. o% b. C% W' @/ {: M3 X1 E
                } catch (Exception e) {
# `3 C) J! U3 I7 M( e                        e.printStackTrace(System.err);, D: |# ?9 v  @
                        //System.out.println(e);
9 ?7 b6 b8 w* z6 G                        System.exit(1);
: {8 F* c/ r$ q# S/ Z                }
% {2 A. m& L% P% e) M  Z* k4 R/ S
( L1 g% g) H3 i
, H2 Y1 E! A( x2 _* f' m        }: c* `# G& m' i: g8 d4 d
. ~8 M! B1 ~6 Y7 G! x) g
        private void swarmSetp() {5 n, u2 f$ A* E/ y% H* Z+ S
                list.addLast(new Agent(Id));# J0 E5 V: u* J' A+ Q0 k
                Id++;( J4 e4 W0 f8 b
        }
; Q- v  e2 u* j' [& N0 Q; I* J" z- W" k
9 y! [" |/ W9 \. B% w        public Activity activateIn(Swarm context) {. l9 j) c# ]3 K& c7 E) z
                super.activateIn(context);3 q8 h/ z5 n: a" h) w
                schedule.activateIn(this);
4 u. n- O  \, }' b) `7 q9 |0 E                return getActivity();7 \7 u) Y. X& v. C, J* r: i
        }8 q: b# Q% d% M. L' A8 c! ]( O' g! _

0 B3 _, ?! E9 q/ V$ A        public static void main(String[] args) {0 R# r6 o4 G, o' U7 q
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ J  Y5 K* `& D- y/ U; u1 l1 i$ z% Q5 r                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ f$ p: I' `- N2 c3 [& |
                swarms.buildObjects();5 ]0 Y; M* m$ n0 f9 L
                swarms.buildActions();
8 B7 j; F" y6 ~; ~  E! f; Z$ q* {+ m                swarms.activateIn(null).run();
6 Z0 Z+ C0 t1 p9 `7 G& A/ l        }4 ?/ T  Q7 ^7 J7 `  {! R# h

! z! G3 r$ M3 p}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-9 11:46 , Processed in 0.016385 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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