设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10855|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  T) ]/ S' g8 ?, u! o
) \# ?0 V" U3 g/ j6 W本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. m; U" K% b9 t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 w+ p" U' V" @
swarm.SignatureNotFoundException
  E/ v) z+ M2 z6 h) y: ~* r% z        at swarm.Selector.<init>(Selector.java:76)& S1 i$ H" D  w
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 C: e2 V6 @. `
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
  z6 p; u4 L- d8 Z
# I0 D6 w# x& g! _+ R) d7 [( [- E, X% `. u. l  J
import swarm.objectbase.SwarmImpl;
4 p) O8 d9 F* k0 cimport swarm.objectbase.Swarm;, K! K2 E+ N6 b
import swarm.activity.ScheduleImpl;
. t$ h5 m5 x& q* l7 Eimport swarm.activity.Activity;
% |( b  _  E2 Eimport swarm.activity.ActionGroupImpl;2 S9 }9 O$ ?! b" j+ ]& W8 ]
import swarm.collections.ListImpl;, X! j: V4 n( v) ?
import swarm.defobj.Zone; " Y$ o( |# L6 V7 {9 `" x
import swarm.Globals;
* b4 Y0 b: B; qimport swarm.Selector;: c1 R- D* K3 }% C& Q& v  A
import swarm.activity.ActionGroup;
! L  h- V/ j7 B4 r0 o8 x) d* x, y4 Y% Eclass Agent {
4 Q' H$ c% n0 k1 U7 t        char id;
! c0 [, y- Z# T' W. X: y, H  e4 ~, O0 t% E7 l' f9 A3 ^* ]" s8 \
        Agent(char id) {
7 }  {$ ~/ d( E7 q                this.id = id;4 Y, W3 Z5 x) b& R# [  W
        }
# ~0 C# A  _) h. g) k# p, A' J6 |" E2 E8 V2 t
        public void agentStep() {
! R" x5 }- U( L9 I0 b                System.out.println(id + ":" + Globals.env.getCurrentTime());
! @& ~% |: j/ K* r) Y2 b) v' z& q. C        }
+ v7 Z( M+ i% g! y& U' _/ b' j}
5 P" \" {: j6 Q* ?) |1 T0 v( P7 \9 x& H' J, {
public class ActionGroupDemo extends SwarmImpl {% R, v% U; @1 C4 {
        ScheduleImpl schedule;
# N& Y, }/ j# G! o& |        ActionGroupImpl actionGroup;. ^  e' x# D7 Z
        ListImpl list;& r2 v- n7 R' |* J
        char Id = 'a';
" p3 e6 e, g* \! p0 X( @7 C, N' G( S: z7 E
        ActionGroupDemo(Zone aZone) {
% w# ]/ a% w* V/ J  [8 p& x) _, G# ]3 ]                super(aZone);5 t% E$ r6 d, w2 s! a6 K
                list = new ListImpl(aZone);3 z3 v- X! h* U, T( H$ X
                swarmSetp();
5 g2 c' s7 e7 `: {- x/ |  s& W                actionGroup = new ActionGroupImpl(aZone);
  O% |9 Z; a3 l7 @, V% V( O, _- d                schedule = new ScheduleImpl(aZone);
% z, R3 B: ]  b                try {
* O$ g! v0 R' N; z                        Selector agentSel = new Selector(Agent.class, "agentStep", false);+ m, N( T" `* X# `
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# d; g* e0 b0 G. P) {8 G* [0 ?; L
                        - n3 i" Q7 P. N9 h; a
                        actionGroup.createActionForEach$message(list, agentSel);2 O2 t5 F7 y8 u' c$ j+ O, b
                        actionGroup.createActionTo$message(this, swarmSel);6 ~. G2 ^& [2 `3 }9 o& B7 ?! y
                        schedule.at$createAction(0, actionGroup);
6 P1 B* q3 P; I. c                        schedule.at$createAction(1, actionGroup);7 `. J5 X1 {* ~7 S
                        schedule.at$createAction(2, actionGroup);. Q5 p$ v; E% Q; q( Z
: @9 y. M' ~- ~5 ]& ^2 T" ?3 G
                } catch (Exception e) {7 a; M+ O* J9 N' j
                        e.printStackTrace(System.err);
# y# S7 `% O  D5 ~# M3 U                        //System.out.println(e);9 s0 `9 v  L0 t+ ^/ {; k) Y* S7 E
                        System.exit(1);1 [/ k+ z- D5 X& D; k! A! D
                }: ^' D  S" Z9 s6 r7 |, A

. ~+ F/ {( s* S  _. f3 g
; ~  X: c! B' J        }
5 L! g) |; N0 r' r
  i; Z. o. j" h4 r6 y        private void swarmSetp() {
; z# _1 d+ K( I# ~+ k                list.addLast(new Agent(Id));
; z# a( |2 T- P                Id++;# W, P4 ?5 d/ ?; {3 D
        }
6 S8 z4 U9 G! ^  ]( o0 k; |- X
        public Activity activateIn(Swarm context) {
1 M8 K) g) J( V6 a: `  ?  B                super.activateIn(context);. u0 W. x  A4 E! T9 p4 l- y2 U8 \2 ?5 b
                schedule.activateIn(this);! S% [7 R% @: p! j. d! p
                return getActivity();8 q+ Z; E3 e$ o
        }. X3 q/ t/ Y  A/ A9 c7 I6 l) H
6 n3 R" \: S# J) n% B
        public static void main(String[] args) {
% ?9 f3 h" M7 R! `( f" a                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' ~# d& x' @& C9 O2 w, w
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& [( Z. O6 \" H
                swarms.buildObjects();; a; G+ {: U* h2 J6 J
                swarms.buildActions();
5 I% K% E# k/ K( i2 @. ^                swarms.activateIn(null).run();+ a5 k8 R" i/ [" x; I5 r
        }8 U9 k4 {3 E5 b/ y6 S3 O
% P# W) _2 K7 m/ R: l$ S: m4 u
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-25 20:08 , Processed in 0.013637 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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