设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8443|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 m8 r) P$ S& O! I3 b" }7 n8 O+ j% U3 Q- L( X) Z8 K* m" q3 O
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update212 ?2 m& t; |, U4 u$ W( R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! p, Y/ s/ Z% S5 ]4 Q/ I# P
swarm.SignatureNotFoundException
. o3 m0 C/ C  _' _; Q        at swarm.Selector.<init>(Selector.java:76)9 @3 c) `) [5 v! l
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 ~9 n( D5 e) R. B+ O' a
        at ActionGroupDemo.main(ActionGroupDemo.java:67)- C: R0 v$ a- X% M7 i+ P

6 d, ~! c" V9 O" c# [$ i
  R/ ]; g  }2 {1 ?9 C2 vimport swarm.objectbase.SwarmImpl;9 w1 D% E. f( Z* G
import swarm.objectbase.Swarm;
: p& _! ^" ?" @; ?$ Limport swarm.activity.ScheduleImpl;
4 l+ b, R6 f; ]" {import swarm.activity.Activity;$ C0 U! U8 k5 l* e$ U9 w: y' g
import swarm.activity.ActionGroupImpl;0 ~3 V# t% P: C4 b1 p! N! j
import swarm.collections.ListImpl;7 i3 }# z  Q. b/ O0 J
import swarm.defobj.Zone;
( x6 U! W8 G  t. y& _import swarm.Globals;+ w5 K. e) \, y( [; O
import swarm.Selector;: B1 x' o- S5 ?5 s+ Q
import swarm.activity.ActionGroup;
4 Q$ `$ v0 E8 ^3 T) M- Nclass Agent {, X) K7 h  p$ d# H3 z6 B0 {
        char id;
( f+ q/ f/ M" W" I# z$ B; X% {
, |" ]. ~8 l% a. W% |" b% `8 Y        Agent(char id) {( A, O* [9 ~  `* @
                this.id = id;) R- _, W% p, y# P
        }
. n$ i# V' l4 y' F5 {
) m& r" s' x" @% Q- ?- `        public void agentStep() {
; r& x4 Q) h/ p: s$ }- @                System.out.println(id + ":" + Globals.env.getCurrentTime());
2 o- a6 J6 A4 Q- l& p" G        }
4 s! t' |1 m# j$ H}, d6 F# F5 @2 t! h% J  W/ ^
% S$ F1 |; I. v& [9 i$ I3 a
public class ActionGroupDemo extends SwarmImpl {
* ^6 E5 f4 T% w' ~$ @, \  I        ScheduleImpl schedule;
( ?* d: ~' u  @2 U        ActionGroupImpl actionGroup;
+ U( V3 f: W* u; S        ListImpl list;
3 R! _! C& u4 ~% f  Q        char Id = 'a';
* ~1 {: p. {, |$ N( u. Z) A8 Y+ l4 i, p) m) F$ V: J) V: J0 ~
        ActionGroupDemo(Zone aZone) {8 y  [& z# `0 w+ q6 {! q" Y* y
                super(aZone);
" b4 R0 E! l% z* D9 ~                list = new ListImpl(aZone);
5 X2 [, P2 F8 ~/ r                swarmSetp();! `9 e: B: i. i7 S  Y- ~$ H
                actionGroup = new ActionGroupImpl(aZone);
6 |. N3 ?) U+ U- U2 R                schedule = new ScheduleImpl(aZone);
0 C! S( a$ b6 b% t  s                try {
! ^- j) ^. N! B2 s$ W! h5 `                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ w; i7 o/ u' R7 i                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' f$ u2 h% O3 l2 p: r+ G4 U* L8 m0 n                        $ f5 T, F1 {9 n7 m
                        actionGroup.createActionForEach$message(list, agentSel);
! _/ K. Y0 I7 J$ _3 ^* X8 K2 d' G                        actionGroup.createActionTo$message(this, swarmSel);) n/ Z, |  P6 F5 l1 r* p5 K
                        schedule.at$createAction(0, actionGroup);
1 d- `: J. W0 t# k                        schedule.at$createAction(1, actionGroup);4 p) X0 K# s( i6 R5 _+ ~) }7 p
                        schedule.at$createAction(2, actionGroup);
, x' }0 \2 i( U1 j" X) h* s  `% p3 {7 Y  P# x  V
                } catch (Exception e) {7 o' `7 U' k9 ~  n- P+ B
                        e.printStackTrace(System.err);
  W  Z$ F) h( y                        //System.out.println(e);
7 c. `5 B5 G4 p6 j7 W" ~; \( z2 K: |                        System.exit(1);
% S4 W/ J- m6 w8 d/ H4 A                }
" c/ h7 N/ J+ [. s- x" K- C
# G$ j% S9 z  Z/ Y  r" E$ a
: f% Z. R; f7 Y' t3 u$ r        }; g- o* B( P- I7 ~9 v0 k8 ?- Y! X3 K
% [7 p& w) k9 C* E1 a
        private void swarmSetp() {  A' k4 o9 h" K3 |+ U$ P
                list.addLast(new Agent(Id));/ U1 a; y- i! V* Z( F
                Id++;5 P# F0 H6 E$ X: A7 S9 I1 \
        }  J1 a& W9 l- `' L% n$ V2 U

$ s$ g0 Z- K1 T$ x# E. a        public Activity activateIn(Swarm context) {$ |' @  m; Z' k8 A1 C
                super.activateIn(context);
' N" S" e) H6 J                schedule.activateIn(this);
5 ~2 ^0 M" t! V/ ^                return getActivity();
/ v9 ?( z6 u% `% m9 c6 D        }/ o; I% ^; ^8 _& Y( u8 t( `1 T

3 ?# {( S, x8 U: n2 h        public static void main(String[] args) {3 R8 y$ I3 G. ~4 L, x  P. b
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
  j4 F5 l! u- o; v9 w' w                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ D1 [' i+ H  [, M
                swarms.buildObjects();4 _6 F" N+ L0 t
                swarms.buildActions();! v4 A. ^" D* T+ W1 u' c9 U9 d0 m
                swarms.activateIn(null).run();6 \% J8 u* [% ]5 v/ Y( h# D
        }
: J9 o) d  O( \& q
- u% Q4 B5 k6 @# ^% Q' a+ b- @}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-12 10:49 , Processed in 0.018402 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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